Ejemplo n.º 1
0
        public void Can_Delete_Project()
        {
            //Arrange

            var mockRepository = new Mock <IProjectRepository>();
            var mockProject    = new Project
            {
                Id               = 1,
                Name             = "pierwszy",
                Status           = ProjectStatus.Active,
                ModificationDate = DateTime.Now.AddDays(-1),
                ProjectPolicies  = new List <ProjectPolicies>()
            };

            mockProject.ProjectPolicies.Add(new ProjectPolicies
            {
                Policy = Policy.MinimumPasswordLength
            });


            mockRepository.Setup(m => m.GetByIdWithAll(It.IsAny <int>())).Returns(mockProject);

            var eventBusMock = new Mock <IEventBus>();

            IDeleteProject service = new DeleteProject(mockRepository.Object, eventBusMock.Object);

            //Act

            service.Invoke(1);
            var removedProject = mockRepository.Object.GetByIdWithAll(1);

            //Assert
            mockRepository.Verify(m => m.Edit(mockProject));

            Assert.True(removedProject != null);
            Assert.True(removedProject.Status == ProjectStatus.Deleted);
            Assert.True(removedProject.Id == 1);
            Assert.True(removedProject.Name == "pierwszy");
            Assert.True(removedProject.ProjectPolicies == null);
        }
Ejemplo n.º 2
0
        public void Cannot_Delete_Non_Existing_Project()
        {
            //Arrange
            var eventBusMock   = new Mock <IEventBus>();
            var mockRepository = new Mock <IProjectRepository>();
            var mockProject    = new Project
            {
                Id     = 1,
                Name   = "pierwszy",
                Status = ProjectStatus.Active
            };

            mockRepository.Setup(m => m.GetByIdWithAll(1)).Returns(mockProject);

            IDeleteProject service = new DeleteProject(mockRepository.Object, eventBusMock.Object);

            //Act

            var exc = Assert.Throws <ArgumentNullException>(() => service.Invoke(2));

            //Assert

            Assert.True(exc.Message.Contains("Cannot find project with id=2"));
        }