public void ItemsReturnedInMonoThread()
		{
			var queueStorage = new MemoryQueueStorageProvider();
			var fakeMessages = Enumerable.Range(0, 10).Select(i => new FakeMessage(i)).ToArray();

			var firstQueueName = "firstQueueName";

			queueStorage.PutRange(firstQueueName, fakeMessages.Take(6));
			var allFirstItems = queueStorage.Get<FakeMessage>(firstQueueName, 6);
			queueStorage.Clear(firstQueueName);

			queueStorage.PutRange(firstQueueName, fakeMessages.Take(6));
			var partOfFirstItems = queueStorage.Get<FakeMessage>(firstQueueName, 2);
			Assert.AreEqual(4, queueStorage.GetApproximateCount(firstQueueName), "#A06");
			queueStorage.Clear(firstQueueName);

			queueStorage.PutRange(firstQueueName, fakeMessages.Take(6));
			var allFirstItemsAndMore = queueStorage.Get<FakeMessage>(firstQueueName, 8);
			queueStorage.Clear(firstQueueName);

			Assert.AreEqual(6, allFirstItems.Count(), "#A07");
			Assert.AreEqual(2, partOfFirstItems.Count(), "#A08");
			Assert.AreEqual(6, allFirstItemsAndMore.Count(), "#A09");
			
		}
		public void GetOnMissingQueueDoesNotFail()
		{
			var queueStorage = new MemoryQueueStorageProvider();
			queueStorage.Get<int>("nosuchqueue", 1);
		}