public void try_to_Fetch_a_queue_Without_specifying_a_name()
        {
            var sut = new MemoryQueueRepository();

            Action actual = () => sut.Get(null);

            actual.ShouldThrow<ArgumentNullException>();
        }
        public void fetch_missing_queue()
        {
            var sut = new MemoryQueueRepository();

            Action actual = () => sut.Get("mama");

            actual.ShouldThrow<NotFoundException>();
        }
        public void add_queue_using_minimal_requirements()
        {
            var queue = new StompQueue();
            queue.Name = "mama";

            var sut = new MemoryQueueRepository();
            sut.Add(queue);

        }
        public void add_queue_requires_a_name()
        {
            var queue = new StompQueue();

            var sut = new MemoryQueueRepository();
            Action actual = () => sut.Add(queue);

            actual.ShouldThrow<ArgumentException>();
        }
        public void add_queue_using_minimal_requirements()
        {
            var transactionManager = Substitute.For<ITransactionManager>();
            var queue = new StompQueue(transactionManager);
            queue.Name = "mama";

            var sut = new MemoryQueueRepository();
            sut.Add(queue);

        }
        public void add_queue_requires_a_name()
        {
            var transactionManager = Substitute.For<ITransactionManager>();
            var queue = new StompQueue(transactionManager);

            var sut = new MemoryQueueRepository();
            Action actual = () => sut.Add(queue);

            actual.ShouldThrow<ArgumentException>();
        }
        public void fetch_existing_queue()
        {
            var queue = new StompQueue();
            queue.Name = "mama";
            var sut = new MemoryQueueRepository();
            sut.Add(queue);

            var actual = sut.Get("mama");

            actual.Should().BeSameAs(queue);
        }
        public void fetch_existing_queue()
        {
            var transactionManager = Substitute.For<ITransactionManager>();
            var queue = new StompQueue(transactionManager);
            queue.Name = "mama";
            var sut = new MemoryQueueRepository();
            sut.Add(queue);

            var actual = sut.Get("mama");

            actual.Should().BeSameAs(queue);
        }