message: Add test that demonstrates the functionality of queue subscribers
diff: @@ -52,6 +52,46 @@ fn jetstream_create_consumer() -> io::Result<()> {
  Ok(())
  }
  +#[test]
  +fn jetstream_queue_process() -> io::Result<()> {
  + let server = server();
  +
  + let nc = nats::connect(&format!("localhost:{}", server.port)).unwrap();
  +
  + let _ = nc.delete_stream("qtest1");
  +
  + nc.create_stream(StreamConfig {
  + name: "qtest1".to_string(),
  + retention: RetentionPolicy::WorkQueue,
  + storage: StorageType::File,
  + ..Default::default()
  + })?;
  +
  + let mut consumer1 = nc.create_consumer(
  + "qtest1",
  + ConsumerConfig {
  + max_deliver: 5,
  + durable_name: Some("consumer1".to_string()),
  + ack_policy: AckPolicy::Explicit,
  + replay_policy: ReplayPolicy::Instant,
  + deliver_policy: DeliverPolicy::All,
  + ack_wait: 30 * 1_000_000_000,
  + deliver_subject: None,
  + ..Default::default()
  + },
  + )?;
  +
  + for i in 1..=1000 {
  + nc.publish("qtest1", format!("{}", i))?;
  + }
  +
  + for _ in 1..=1000 {
  + consumer1.process(|_msg| Ok(()))?;
  + }
  +
  + Ok(())
  +}
  +
  #[test]
  fn jetstream_basics() -> io::Result<()> {
  let server = server();
  