Exemple #1
0
        public void Create_InvalidSupplierId_ArgumentExceptionThrown()
        {
            var id         = Guid.NewGuid();
            var supplierId = Guid.Empty;

            _consignmentService = ConsignmentServiceFactory.Create(supplierId);
            CreateConsignment(id, supplierId);
        }
Exemple #2
0
        public void Create_UserHasInsufficientSecurityClearance_DomainValidationExceptionThrown()
        {
            var id         = Guid.NewGuid();
            var supplierId = Guid.NewGuid();

            _consignmentService = ConsignmentServiceFactory.Create(supplierId,
                                                                   TestUserContext.Create("*****@*****.**", "Test User", "Operations Manager", UserRole.Public));
            CreateConsignment(id, supplierId);
            Assert.IsTrue(_domainValidationException.ResultContainsMessage(Messages.InsufficientSecurityClearance));
        }
Exemple #3
0
        public void Edit_InvalidSupplierId_ArgumentExceptionThrown()
        {
            var supplierId = Guid.NewGuid();
            var consignmentRepositoryMock = MockRepository.GenerateMock <IConsignmentRepository>();

            consignmentRepositoryMock.Stub(x => x.GetById(_consignmentForEditId)).Return(_consignmentForEdit);
            var supplierRepositoryStub = MockRepository.GenerateStub <ISupplierRepository>();

            supplierRepositoryStub.Stub(x => x.GetById(supplierId)).Return(null);
            _consignmentService = ConsignmentServiceFactory.Create(consignmentRepositoryMock, supplierRepositoryStub);
            Edit(_consignmentForEditId, supplierId);
        }
Exemple #4
0
 public void GetConsignments_UserHasInsufficientSecurityClearance_DomainValidationExceptionThrown()
 {
     try
     {
         _consignmentService = ConsignmentServiceFactory.Create(
             TestUserContext.Create("*****@*****.**", "Test User", "Operations Manager", UserRole.Public));
         _consignmentService.GetConsignments();
     }
     catch (DomainValidationException dex)
     {
         _domainValidationException = dex;
     }
     Assert.IsTrue(_domainValidationException.ResultContainsMessage(Messages.InsufficientSecurityClearance));
 }
Exemple #5
0
        public void Create_ValidConsignmentDetails_SuccessfullyCreated()
        {
            var id         = Guid.NewGuid();
            var supplierId = Guid.NewGuid();

            var consignmentRepositoryMock = MockRepository.GenerateMock <IConsignmentRepository>();

            consignmentRepositoryMock.Expect(x => x.Create(null)).IgnoreArguments();
            _consignmentService = ConsignmentServiceFactory.Create(consignmentRepositoryMock, supplierId);
            CreateConsignment(id, supplierId);
            consignmentRepositoryMock.VerifyAllExpectations();
            Assert.That(_savedConsignment.Id != Guid.Empty);
            Assert.That(!String.IsNullOrEmpty(_savedConsignment.ConsignmentNo) && _savedConsignment.ConsignmentNo.StartsWith("CR"));
            Assert.AreEqual(_savedConsignment.DateCreated, _dateCreated);
            Assert.AreEqual("*****@*****.**", _savedConsignment.CreatedBy.EmailAddress);
        }
Exemple #6
0
        public void Edit_ConsignmentIsOrdered_DomainValidationExceptionThrown()
        {
            _consignmentForEdit.IsOrdered = true;
            var supplierId = Guid.NewGuid();
            var consignmentRepositoryMock = MockRepository.GenerateMock <IConsignmentRepository>();

            consignmentRepositoryMock.Stub(x => x.GetById(_consignmentForEditId)).Return(_consignmentForEdit);
            var supplierRepositoryStub = MockRepository.GenerateStub <ISupplierRepository>();

            supplierRepositoryStub.Stub(x => x.GetById(supplierId)).Return(new Supplier {
                Id = supplierId, Name = "New Supplier"
            });
            _consignmentService = ConsignmentServiceFactory.Create(consignmentRepositoryMock, supplierRepositoryStub);

            Edit(_consignmentForEditId, supplierId);
            Assert.IsTrue(_domainValidationException.ResultContainsMessage(Messages.ConsignmentIsOrdered));
        }
Exemple #7
0
        public void Edit_ValidDetails_SuccessfulEdit()
        {
            var supplierId = Guid.NewGuid();
            var consignmentRepositoryMock = MockRepository.GenerateMock <IConsignmentRepository>();

            consignmentRepositoryMock.Stub(x => x.GetById(_consignmentForEditId)).Return(_consignmentForEdit);
            consignmentRepositoryMock.Expect(x => x.Update(null)).IgnoreArguments();
            var supplierRepositoryStub = MockRepository.GenerateStub <ISupplierRepository>();

            supplierRepositoryStub.Stub(x => x.GetById(supplierId)).Return(new Supplier {
                Id = supplierId, Name = "New Supplier"
            });
            _consignmentService = ConsignmentServiceFactory.Create(consignmentRepositoryMock, supplierRepositoryStub);

            Edit(_consignmentForEditId, supplierId);
            consignmentRepositoryMock.VerifyAllExpectations();
            Assert.AreEqual(_consignmentForEditId, _consignmentForEdit.Id);
            Assert.AreEqual(supplierId, _consignmentForEdit.Supplier.Id);
        }
Exemple #8
0
        public void Edit_UserHasInsufficientSecurityClearance_DomainValidationExceptionThrown()
        {
            _consignmentForEdit.IsOrdered = true;
            var supplierId = Guid.NewGuid();
            var consignmentRepositoryMock = MockRepository.GenerateMock <IConsignmentRepository>();

            consignmentRepositoryMock.Stub(x => x.GetById(_consignmentForEditId)).Return(_consignmentForEdit);
            var supplierRepositoryStub = MockRepository.GenerateStub <ISupplierRepository>();

            supplierRepositoryStub.Stub(x => x.GetById(supplierId)).Return(new Supplier {
                Id = supplierId, Name = "New Supplier"
            });
            _consignmentService = ConsignmentServiceFactory.Create(
                consignmentRepositoryMock,
                supplierRepositoryStub,
                TestUserContext.Create("*****@*****.**", "Test User", "Operations Manager", UserRole.Member));

            Edit(_consignmentForEditId, supplierId);
            Assert.IsTrue(_domainValidationException.ResultContainsMessage(Messages.InsufficientSecurityClearance));
        }
Exemple #9
0
        public void Edit_UserIsAdmin_SuccessfulEdit()
        {
            var supplierId = Guid.NewGuid();
            var consignmentRepositoryMock = MockRepository.GenerateMock <IConsignmentRepository>();

            consignmentRepositoryMock.Stub(x => x.GetById(_consignmentForEditId)).Return(_consignmentForEdit);
            consignmentRepositoryMock.Expect(x => x.Update(null)).IgnoreArguments();
            var supplierRepositoryStub = MockRepository.GenerateStub <ISupplierRepository>();

            supplierRepositoryStub.Stub(x => x.GetById(supplierId)).Return(new Supplier {
                Id = supplierId, Name = "New Supplier"
            });
            _consignmentService = ConsignmentServiceFactory.Create(
                consignmentRepositoryMock,
                supplierRepositoryStub,
                TestUserContext.Create("*****@*****.**", "Test User", "Operations Manager", UserRole.Admin | UserRole.Member));

            Edit(_consignmentForEditId, supplierId);
            consignmentRepositoryMock.VerifyAllExpectations();
            Assert.AreEqual(_consignmentForEditId, _consignmentForEdit.Id);
            Assert.AreEqual(supplierId, _consignmentForEdit.Supplier.Id);
        }