コード例 #1
0
        public void DeleteDocumentById_ShouldReturnExceptionUserPemissionDeniedDocAccessTypeIdDeptMismatch()
        {
            #region Arrange

            var  docId           = 1;
            bool exceptionCaught = false;

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 19//Finance
            };

            DocumentAccessType testDocAccessType = new DocumentAccessType()
            {
                Code = Constants.DocumentAccessType.Department,
                Name = "Department"
            };

            Document testDocument = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName",
                OthersCanDeleteFlag  = true,
                DocumentAccessTypeId = 1,  //Department
                DepartmentId         = 84, //MRM Team
                DeliverableId        = 1,
                FileName             = "TestFileName",
                Description          = "TestDescription",
                IsActiveFlag         = true,
                OwnerMRMUserId       = 99,
                DocumentAccessType   = testDocAccessType
            };

            mockUserRepository.Setup(user => user.GetById(It.IsAny <int>())).Returns((MRMUser)null);
            mockDocumentRepository.Setup(doc => doc.GetSingle(It.IsAny <Expression <Func <Document, bool> > >())).Returns(
                (Expression <Func <Document, bool> > expr) => testDocument);
            #endregion

            #region Act
            try
            {
                var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                      mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

                docService.DeleteDocumentById(docId);
            }
            catch
            {
                exceptionCaught = true;
            }

            #endregion


            //Assert
            Assert.IsTrue(exceptionCaught);
        }
コード例 #2
0
        public void GetDocumentsByDeliverableId_ShouldReturnTestFileName1()
        {
            //Arrange

            int testDeliverableId = 1;

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 84//MRM Team
            };

            Document testDocument1 = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName1",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.Department
                },
                DepartmentId   = 84,//MRM Team
                DeliverableId  = 1,
                FileName       = "TestFileName1",
                Description    = "TestDescription",
                IsActiveFlag   = true,
                FileId         = null,
                OwnerMRMUserId = 2
            };

            //Build Document list
            List <Document> testDocumentList = new List <Document> {
                testDocument1
            };

            IQueryable <Document> testDocumentQueryable = testDocumentList.AsQueryable();

            mockUserRepository.Setup(user => user.GetById(It.IsAny <long>())).Returns(testMRMUser);
            mockDocumentRepository.Setup(doc => doc.GetAll()).Returns(testDocumentQueryable);

            //Act
            var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                  mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

            docService.UserId = testDocument1.OwnerMRMUserId;

            var result = docService.GetDocumentsByDeliverableId(testDeliverableId).ToList();

            //Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(result.Count == 1);
        }
コード例 #3
0
        public void GetContactUser_Tests()
        {
            #region Variables
            var contactId = 1;
            #endregion

            #region Data SetUp

            #region User

            var user = new MRMUser()
            {
                Id           = 1,
                FirstName    = "User1",
                LastName     = "Last1",
                EmailAddress = "*****@*****.**",
                PhoneNumber  = "1234567",
                UserName     = "******"
            };

            #endregion

            #endregion

            #region Mock
            mockUserRepository.Setup(x => x.GetSingle(It.IsAny <Expression <Func <MRMUser, bool> > >())).Returns(user);
            mockUserRepository.Setup(x => x.GetById(It.IsAny <int>())).Returns(user);

            #endregion

            #region Services
            var userService = new UserServiceMock(
                _userRepository: mockUserRepository.Object);

            #endregion

            #region Asserts
            var results = userService.GetById(contactId);

            Assert.IsTrue(results != null);
            Assert.IsTrue(results.Id == 1);

            #endregion
        }
コード例 #4
0
        public void DeleteDocumentById_ShouldReturnExceptionUserPemissionToDeleteDenied()
        {
            #region Arrange

            var  nonExistentDocId = -99;
            bool exceptionCaught  = false;

            MRMUser testMRMUser = new MRMUser()
            {
                Id        = 1,
                FirstName = "TestFirst",
                LastName  = "TestLast"
            };


            mockUserRepository.Setup(user => user.GetById(It.IsAny <int>())).Returns((MRMUser)null);
            mockDocumentRepository.Setup(doc => doc.GetSingle(It.IsAny <Expression <Func <Document, bool> > >())).Returns(
                (Expression <Func <Document, bool> > expr) => null);
            #endregion

            #region Act
            try
            {
                var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                      mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

                docService.DeleteDocumentById(nonExistentDocId);
            }
            catch
            {
                exceptionCaught = true;
            }

            #endregion


            //Assert
            Assert.IsTrue(exceptionCaught);
        }
コード例 #5
0
        public void GetAdminDataByDepartmentId_Test()
        {
            #region Datasetup
            Department dept = new Department()
            {
                Id   = 84,
                Name = "MRM Team",
                Code = "MRM"
            };
            List <Department> deptlist = new List <Department>();
            deptlist.Add(dept);
            MRMUser users = new MRMUser()
            {
                Id         = 567,
                FirstName  = "Ramya",
                CreatedBy  = 532,
                Department = dept
            };
            List <MRMUser> userslist = new List <MRMUser>();
            userslist.Add(users);
            Channel channel1 = new Channel()
            {
                Id                   = 1,
                Name                 = "Disney Channel",
                Code                 = "DC",
                CreatedBy            = 1,
                LastUpdatedBy        = 1,
                IsMarketingGroupFlag = true,
                IsActiveFlag         = true
            };
            List <Channel> channellist = new List <Channel>();
            channellist.Add(channel1);
            Module module1 = new Module()
            {
                Id            = 10,
                Code          = "USER",
                IsAdminModule = true,
                Name          = "User Admin"
            };
            List <Module> modulelist = new List <Module>();
            modulelist.Add(module1);
            UserRole roles = new UserRole()
            {
                Id            = 1,
                Name          = "None",
                LastUpdatedBy = 567
            };
            List <UserRole> roleslist = new List <UserRole>();
            roleslist.Add(roles);
            UserTitle titles = new UserTitle()
            {
                Id   = 1,
                Name = "Test"
            };
            List <UserTitle> titleslist = new List <UserTitle>();
            titleslist.Add(titles);
            #endregion
            #region mocking
            mockuserService.Setup(a => a.GetAllDepartments()).Returns(deptlist);
            mockdepartmentRepository.Setup(a => a.GetAll()).Returns(deptlist.AsQueryable());
            mockuserService.Setup(a => a.AllUsers()).Returns(userslist);
            mockuserRepository.Setup(a => a.GetMany(It.IsAny <Expression <Func <MRMUser, bool> > >())).Returns(userslist);
            mockuserService.Setup(a => a.GetAllChannels()).Returns(channellist);
            mockchannelRepository.Setup(a => a.GetAll()).Returns(channellist.AsQueryable());
            mockuserService.Setup(a => a.GetAllModules()).Returns(modulelist);
            mockmoduleRepository.Setup(a => a.GetAll()).Returns(modulelist.AsQueryable());
            mockuserService.Setup(a => a.GetAllRoles()).Returns(roleslist);
            mockroleRepository.Setup(a => a.GetAll()).Returns(roleslist.AsQueryable());
            mockuserService.Setup(a => a.GetAllTitles()).Returns(titleslist);
            mockusertitleRepository.Setup(a => a.GetAll()).Returns(titleslist.AsQueryable());

            #endregion
            //Act
            var UserController = new UserControllerMock(userService: mockuserService.Object);
            var result         = UserController.AllUsers(true, MRM_USER_ID, NETWORK_LOGIN);
            //Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(result.AllChannels.Count == 1);
            Assert.IsFalse(result.AllModules.Count > 0);
        }
コード例 #6
0
        public void GetDocumentsByDeliverableId_ShouldReturnThreeDocuments()
        {
            //Arrange
            #region Data Setup
            int    testDeliverableId  = 1;
            string testDocDescription = "WillReturn";

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 84//MRM Team
            };

            Document testDocument1 = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName1",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.Department
                },
                DepartmentId   = 84,//MRM Team
                DeliverableId  = 1,
                FileName       = "TestFileName1",
                Description    = "WillReturn",
                IsActiveFlag   = true,
                FileId         = null,
                OwnerMRMUserId = 2
            };

            Document testDocument2 = new Document()
            {
                Id   = 2,
                Name = "TestDocumentName2",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.GeneralAccess
                },
                DepartmentId   = 19,//Finance
                DeliverableId  = 1,
                FileName       = "TestFileName2",
                Description    = "WillReturn",
                IsActiveFlag   = true,
                FileId         = null,
                OwnerMRMUserId = 2
            };

            Document testDocument3 = new Document()
            {
                Id   = 2,
                Name = "TestDocumentName3",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = null,
                DepartmentId        = 19,//Finance
                DeliverableId       = 1,
                FileName            = "TestFileName3",
                Description         = "WillReturn",
                IsActiveFlag        = true,
                FileId         = null,
                OwnerMRMUserId = 2
            };

            List <Document_MRMUser> testDocMRMUsers = new List <Document_MRMUser>();

            Document testDocument4 = new Document()
            {
                Id   = 2,
                Name = "TestDocumentName4",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.SpecificPeople
                },
                DepartmentId     = 19,//Finance
                DeliverableId    = 1,
                FileName         = "TestFileName4",
                Description      = "WillNotReturn",
                IsActiveFlag     = true,
                FileId           = null,
                OwnerMRMUserId   = 3,
                Document_MRMUser = testDocMRMUsers,//Will not return, no users
            };

            Document testDocument5 = new Document()
            {
                Id   = 2,
                Name = "TestDocumentName5",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = null,
                DepartmentId        = 19,//Finance
                DeliverableId       = 1,
                FileName            = "TestFileName5",
                Description         = "WillNotReturn",
                IsActiveFlag        = false, //Will not return. Only Active docs
                FileId         = null,
                OwnerMRMUserId = 2
            };

            Document testDocument6 = new Document()
            {
                Id   = 2,
                Name = "TestDocumentName5",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = null,
                DepartmentId        = 19, //Finance
                DeliverableId       = 2,  //Will not return, not matching deliverableId being passed in
                FileName            = "TestFileName5",
                Description         = "WillNotReturn",
                IsActiveFlag        = false,
                FileId         = null,
                OwnerMRMUserId = 2
            };
            #endregion

            //Build Document list
            List <Document> testDocumentList = new List <Document> {
                testDocument1, testDocument2, testDocument3, testDocument4, testDocument5, testDocument6
            };

            IQueryable <Document> testDocumentQueryable = testDocumentList.AsQueryable();

            mockUserRepository.Setup(user => user.GetById(It.IsAny <long>())).Returns(testMRMUser);
            mockDocumentRepository.Setup(doc => doc.GetAll()).Returns(testDocumentQueryable);

            //Act
            var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                  mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

            docService.UserId = 2;

            var result = docService.GetDocumentsByDeliverableId(testDeliverableId).ToList();

            //Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(result.Count == 3);
            Assert.IsTrue(result.TrueForAll(doc => doc.Description.Equals(testDocDescription)));
        }
コード例 #7
0
        public void SaveDocumentInsert_Success()
        {
            bool exceptionCaught = false;
            int  result          = 0;

            //Arrange

            byte[] fileData = { 0x32, 0x00, 0x1E, 0x00 };

            DeliverableDocument testDeliverableDocument = new DeliverableDocument()
            {
                DeliverableId = 1,
                FileData      = fileData,
                FileName      = "NewFileName",
                FileSize      = 1000,
                FileType      = "MongoFileType",
                CreateDate    = DateTime.Now,
                UserId        = 0,
                UserName      = "******",
                IsActive      = true,
                Id            = Guid.Empty
            };

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 84//MRM Team
            };

            Document testDocument = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName",
                OthersCanDeleteFlag  = true,
                DocumentAccessTypeId = 4,  //User Only
                DepartmentId         = 84, //MRM Team
                DeliverableId        = 1,
                FileName             = "TestFileName",
                Description          = "TestDescription",
                IsActiveFlag         = true,
                FileId = null
            };

            List <Document_MRMUser> testDocMRMUsers = new List <Document_MRMUser>();

            Document_MRMUser testDocMRMUser = new Document_MRMUser()
            {
                MRMUserId = 0
            };

            testDocMRMUsers.Add(testDocMRMUser);

            DocumentAccessType testDocAccessType = new DocumentAccessType()
            {
                Code = Constants.DocumentAccessType.Department
            };

            mockUserRepository.Setup(user => user.GetById(It.IsAny <long>())).Returns(testMRMUser);
            mockDocumentRepository.Setup(doc => doc.GetSingle(It.IsAny <Expression <Func <Document, bool> > >())).Returns(
                (Expression <Func <Document, bool> > expr) => null);

            mockDeliverableDocumentRepository.Setup(dd => dd.Add(It.IsAny <DeliverableDocument>())).Returns(true);

            mockDocumentRepository.Setup(doc => doc.Add(It.IsAny <Document>())).Returns(testDocument);

            mockUnitOfWork.Setup(uow => uow.Commit());

            try
            {
                var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                      mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

                result = docService.Save(testDocument, testDeliverableDocument);
            }
            catch (Exception ex)
            {
                exceptionCaught = true;
            }

            //Assert
            Assert.IsFalse(exceptionCaught);
            Assert.IsTrue(testDocument.FileId == Guid.Empty);
        }
コード例 #8
0
        public void SaveDocumentUpdate_Success()
        {
            bool exceptionCaught = false;
            int  result          = 0;
            //Arrange

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 84//MRM Team
            };

            Document testDocument = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName",
                OthersCanDeleteFlag  = true,
                DocumentAccessTypeId = 4,  //User Only
                DepartmentId         = 84, //MRM Team
                DeliverableId        = 1,
                FileName             = "TestFileName",
                Description          = "TestDescription",
                IsActiveFlag         = true
            };

            List <Document_MRMUser> testDocMRMUsers = new List <Document_MRMUser>();

            Document_MRMUser testDocMRMUser = new Document_MRMUser()
            {
                MRMUserId = 0
            };

            testDocMRMUsers.Add(testDocMRMUser);

            DocumentAccessType testDocAccessType = new DocumentAccessType()
            {
                Code = Constants.DocumentAccessType.Department
            };

            Document testExistingDocument = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName",
                OthersCanDeleteFlag  = true,
                DocumentAccessTypeId = 4,  //User Only
                DocumentAccessType   = testDocAccessType,
                DepartmentId         = 84, //MRM Team
                DeliverableId        = 1,
                FileName             = "TestFileName",
                Description          = "TestDescriptionChange",
                IsActiveFlag         = true,
                Document_MRMUser     = testDocMRMUsers,
                OwnerMRMUserId       = 0
            };

            mockUserRepository.Setup(user => user.GetById(It.IsAny <long>())).Returns(testMRMUser);
            mockDocumentRepository.Setup(doc => doc.GetSingle(It.IsAny <Expression <Func <Document, bool> > >())).Returns(
                (Expression <Func <Document, bool> > expr) => testExistingDocument);

            mockDocumentRepository.Setup(doc => doc.Update(It.IsAny <Document>()));

            mockUnitOfWork.Setup(uow => uow.Commit());

            try
            {
                var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                      mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

                result = docService.Save(testDocument, null);
            }
            catch (Exception ex)
            {
                exceptionCaught = true;
            }

            //Assert
            Assert.IsFalse(exceptionCaught);
            Assert.IsTrue(result > 0);
        }
コード例 #9
0
        public void DeleteDocumentById_ShouldSuccessfullyDelete()
        {
            #region Arrange

            var  docId           = 1;
            bool exceptionCaught = false;

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 84//MRM Team
            };

            DocumentAccessType testDocAccessType = new DocumentAccessType()
            {
                Code = Constants.DocumentAccessType.Department,
                Name = "Department"
            };

            Document testDocument = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName",
                OthersCanDeleteFlag  = true,
                DocumentAccessTypeId = 1,  //Department
                DepartmentId         = 84, //MRM Team
                DeliverableId        = 1,
                FileName             = "TestFileName",
                FileId             = Guid.Empty,
                Description        = "TestDescription",
                IsActiveFlag       = true,
                OwnerMRMUserId     = 99,
                DocumentAccessType = testDocAccessType
            };

            mockUserRepository.Setup(user => user.GetById(It.IsAny <long>())).Returns(testMRMUser);

            mockDocumentRepository.Setup(doc => doc.GetSingle(It.IsAny <Expression <Func <Document, bool> > >())).Returns(
                (Expression <Func <Document, bool> > expr) => testDocument);

            mockDocumentRepository.Setup(doc => doc.Update(It.IsAny <Document>()));

            mockDeliverableDocumentRepository.Setup(mongo => mongo.Delete(It.IsAny <Guid>()));

            mockUnitOfWork.Setup(uow => uow.Commit());
            #endregion

            #region Act
            try
            {
                var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                      mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);
                docService.DeleteDocumentById(docId);
            }
            catch (Exception ex)
            {
                exceptionCaught = true;
            }

            #endregion


            //Assert
            Assert.IsFalse(exceptionCaught);
        }
コード例 #10
0
        public void GetDocumentsByDeliverableId_ShouldReturnSpecificUserDocument()
        {
            //Arrange

            int testDeliverableId = 1;

            MRMUser testMRMUser = new MRMUser()
            {
                Id           = 1,
                FirstName    = "TestFirst",
                LastName     = "TestLast",
                DepartmentId = 19//Finance
            };

            Document testDocument1 = new Document()
            {
                Id   = 1,
                Name = "TestDocumentName1",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.Department
                },
                DepartmentId   = 84,//MRM Team
                DeliverableId  = 1,
                FileName       = "TestFileName2",
                Description    = "TestDescription",
                IsActiveFlag   = true,
                FileId         = null,
                OwnerMRMUserId = 2
            };

            Document testDocument2 = new Document()
            {
                Id   = 2,
                Name = "TestDocumentName2",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.GeneralAccess
                },
                DepartmentId   = 84,//MRM Team
                DeliverableId  = 1,
                FileName       = "TestFileName2",
                Description    = "TestDescription",
                IsActiveFlag   = true,
                FileId         = null,
                OwnerMRMUserId = 2
            };

            Document_MRMUser testSPDocUser = new Document_MRMUser()
            {
                MRMUserId = 10
            };

            List <Document_MRMUser> testSPDocUserList = new List <Document_MRMUser> {
                testSPDocUser
            };

            Document testSpecificPeople = new Document()
            {
                Id   = 3,
                Name = "TestSP",
                OthersCanDeleteFlag = true,
                DocumentAccessType  = new DocumentAccessType()
                {
                    Code = Constants.DocumentAccessType.SpecificPeople
                },
                DepartmentId     = 84,//MRM Team
                DeliverableId    = 1,
                FileName         = "TestSP",
                Description      = "TestSPDescription",
                IsActiveFlag     = true,
                FileId           = null,
                OwnerMRMUserId   = 2,
                Document_MRMUser = testSPDocUserList
            };

            //Build Document list
            List <Document> testDocumentList = new List <Document> {
                testDocument1, testDocument2, testSpecificPeople
            };

            IQueryable <Document> testDocumentQueryable = testDocumentList.AsQueryable();

            mockUserRepository.Setup(user => user.GetById(It.IsAny <long>())).Returns(testMRMUser);
            mockDocumentRepository.Setup(doc => doc.GetAll()).Returns(testDocumentQueryable);

            //Act


            var docService = new DocumentsService(mockUnitOfWork.Object, null, mockDocumentRepository.Object, mockUserRepository.Object,
                                                  mockDocumentAccessTypeRepository.Object, mockMRMUserRepository.Object, mockDeliverableDocumentRepository.Object, mockContractRequestMasterVendorDocumentRepository.Object);

            docService.UserId = 10;

            var result = docService.GetDocumentsByDeliverableId(testDeliverableId).ToList();

            //Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(result.Count == 2);
            var specificPeopleDoc = result.Where(x => x.Id == 3).ToList();

            Assert.IsTrue(specificPeopleDoc.Count() > 0);
        }
コード例 #11
0
        public void UpsertBillingWorkOrderTransactions_ForFY2017()
        {
            #region Data Setup
            WorkOrderTransaction workOrderTransaction1 = new WorkOrderTransaction()
            {
                TransactionNumber = "11111111",
                BillingAmount     = 5000,
                CreatedBy         = 496,
                Id          = 1,
                WorkOrderId = 1,
                BeginDate   = new DateTime(2017, 5, 19)
            };
            WorkOrderTransaction workOrderTransactionExist = new WorkOrderTransaction()
            {
                TransactionNumber = "22222222",
                BillingAmount     = 3000,
                CreatedBy         = 496,
                Id        = 2,
                BeginDate = new DateTime(2016, 5, 19)
            };
            List <WorkOrderTransaction> workOrderTransactionList = new List <WorkOrderTransaction>();
            workOrderTransactionList.Add(workOrderTransaction1);
            DeliverableGroup testDeliverableGroup = new DeliverableGroup()
            {
                Code = "VID"//Video
            };
            Channel testChannel = new Channel()
            {
                Code = "ROM"//Radio Disney
            };
            WBSElement wbsElement1 = new WBSElement()
            {
                Id            = 1,
                FullWBSNumber = "123456.011.001",
                TypeOfWorkId  = 1000,
            };
            WBSElement wbsElement2 = new WBSElement()
            {
                Id            = 2,
                FullWBSNumber = "123456.011.002",
                TypeOfWorkId  = 1001,
            };
            Deliverable testDeliverable = new Deliverable()
            {
                Id = 1,
                DeliverableTypeId     = 94, //Affiliate Marketing
                ProducingDepartmentId = 84, //MRM Team
                Name = "Radio Disney Video Deliverable",
                //ChannelId = 10,//Radio Disney
                DeliverableGroupId = 2,//Video
                DeliverableGroup   = testDeliverableGroup,
                Channel            = testChannel,
            };
            DeliverableBudget deliverableBudget1 = new DeliverableBudget()
            {
                DeliverableId  = 1,
                Id             = 100,
                WBSElement     = wbsElement1,
                MasterVendorId = 418,
                Deliverable    = testDeliverable,
                PHApplyPercent = 40
            };
            DeliverableBudget deliverableBudget2 = new DeliverableBudget()
            {
                DeliverableId  = 1,
                Id             = 101,
                WBSElement     = wbsElement2,
                MasterVendorId = 418,
                Deliverable    = testDeliverable,
            };
            WorkOrder workOrder = new WorkOrder()
            {
                WorkOrderNumber = 1122,
                Id            = 1,
                VendorId      = 418,
                DeliverableId = 1,
                Deliverable   = testDeliverable
            };
            TypeOfWork tow = new TypeOfWork()
            {
                Id         = 1,
                ChannelId  = 1,
                FiscalYear = 2016
            };
            WBSFiscalYear_Channel wBSFiscalYear_Channel = new WBSFiscalYear_Channel()
            {
                FiscalYear = "2016",
                Id         = 52,
                WBSNumber  = "12345",
                CreatedBy  = 496
            };
            List <WorkOrder> workOrderList = new List <WorkOrder>();
            workOrderList.Add(workOrder);
            List <Deliverable> deliverableList = new List <Deliverable>();
            deliverableList.Add(testDeliverable);
            List <DeliverableBudget> deliverableBudgetList = new List <DeliverableBudget>();
            deliverableBudgetList.Add(deliverableBudget1);
            tow.DeliverableBudget = deliverableBudgetList;
            List <TypeOfWork> towList = new List <TypeOfWork>();
            towList.Add(tow);
            List <WBSFiscalYear_Channel> wbsFiscalYear_ChannelList = new List <WBSFiscalYear_Channel>();
            wbsFiscalYear_ChannelList.Add(wBSFiscalYear_Channel);
            //wBSFiscalYear_Channel.TypeOfWork = towList;
            List <int> deliverableBudgetIdList = new List <int>();
            deliverableBudgetIdList.Add(deliverableBudget1.Id);
            Calendar calendar = new Calendar()
            {
                Id           = 1,
                CalendarYear = "2016",
                FiscalYear   = "2017"
            };
            MRMUser user = new MRMUser()
            {
                Id       = 496,
                UserName = "******"
            };
            #endregion

            #region Mocking
            mockWorkOrderTransactionRepositry.Setup(i => i.GetSingle(It.IsAny <Expression <Func <WorkOrderTransaction, bool> > >()))
            .Returns(workOrderTransactionExist);
            mockWorkOrderRepository.Setup(i => i.GetAll()).Returns(workOrderList.AsQueryable());
            mockDeliverableRepository.Setup(i => i.GetAll()).Returns(deliverableList.AsQueryable());
            mockDeliverableBudgetRepository.Setup(i => i.GetAll()).Returns(deliverableBudgetList.AsQueryable());
            mockTypeOfWorkRepository.Setup(i => i.GetAll()).Returns(towList.AsQueryable());
            mockDeliverableRepository.Setup(i => i.CreateCrossoverDeliverable(It.IsAny <int>(), It.IsAny <string>(), It.IsAny <int>(), It.IsAny <int>()))
            .Returns(deliverableBudgetIdList.AsQueryable());
            mockDeliverableBudgetRepository.Setup(i => i.GetByDeliverableBudgetId(It.IsAny <int>()))
            .Returns(deliverableBudget1);
            mockDeliverableBudgetRepository.Setup(i => i.Update(It.IsAny <DeliverableBudget>()));
            mockWorkOrderTransactionRepositry.Setup(i => i.Add(It.IsAny <WorkOrderTransaction>()));
            mockWorkOrderTransactionRepositry.Setup(i => i.Update(It.IsAny <WorkOrderTransaction>()));
            mockInvoiceLineRepository.Setup(i => i.GetSingle(It.IsAny <Expression <Func <InvoiceLine, bool> > >()))
            .Returns(() => null);
            mockUnitOfWork.Setup(i => i.Commit());
            mockUserRepository.Setup(i => i.GetSingle(It.IsAny <Expression <Func <MRMUser, bool> > >())).Returns(user);
            mockCalendarRepository.Setup(i => i.GetSingle(It.IsAny <Expression <Func <Calendar, bool> > >())).Returns(calendar);
            mockWBSFiscalYear_ChannelRepository.Setup(i => i.GetAll()).Returns(wbsFiscalYear_ChannelList.AsQueryable());
            #endregion

            #region Service
            var integrationService = new IntegrationServiceMock(workOrderRepository: mockWorkOrderRepository.Object,
                                                                iBillingWorkOrderTransactionRepositry: mockWorkOrderTransactionRepositry.Object,
                                                                iDeliverableRepository: mockDeliverableRepository.Object, iDeliverableBudgetRepository: mockDeliverableBudgetRepository.Object,
                                                                iTypeOfWorkRepository: mockTypeOfWorkRepository.Object, iInvoiceLineRepository: mockInvoiceLineRepository.Object,
                                                                unitOfWork: mockUnitOfWork.Object, iUserRepository: mockUserRepository.Object, iCalendarRepository: mockCalendarRepository.Object,
                                                                iWBSFiscalYear_ChannelRepository: mockWBSFiscalYear_ChannelRepository.Object);

            bool result = integrationService.UpsertBillingWorkOrderTransactions(workOrderTransactionList);
            #endregion

            #region Asserts
            Assert.IsTrue(result == true);
            #endregion
        }
コード例 #12
0
        public void SaveTest()//MRM-964
        {
            #region datasetup
            MRMUser user = new MRMUser()
            {
                CreatedBy           = 556,
                Id                  = 581,
                UserName            = "******",
                DepartmentId        = 85,
                IsActiveFlag        = true,
                LastUpdatedBy       = 556,
                IsAdministratorFlag = true,
                MasterVendorId      = 12,
                PhoneNumber         = "9562345685",
                UserTitleId         = 5,
                CreatedDateTime     = DateTime.Now,
                LastUpdatedDateTime = DateTime.Now
            };
            MRMUser_Channel userchannel = new MRMUser_Channel()
            {
                Id                  = 1,
                MRMUserId           = 556,
                CreatedBy           = 556,
                ChannelId           = 2,
                LastUpdatedBy       = 556,
                CreatedDateTime     = DateTime.Now,
                LastUpdatedDateTime = DateTime.Now
            };
            List <MRMUser_Channel> userchannellist = new List <MRMUser_Channel>();
            userchannellist.Add(userchannel);
            MRMUser_UserRole_Module userrole = new MRMUser_UserRole_Module()
            {
                Id              = 1,
                CreatedBy       = 556,
                CreatedDateTime = DateTime.Now,
                LastUpdatedBy   = 556,
                ModuleId        = 1,
                MRMUserId       = 556
            };
            List <MRMUser_UserRole_Module> userrolemodule = new List <MRMUser_UserRole_Module>();
            userrolemodule.Add(userrole);
            MRMUser_DepartmentType userdepartmenttype = new MRMUser_DepartmentType()
            {
                Id                  = 1,
                CreatedBy           = 556,
                CreatedDateTime     = DateTime.Now,
                DepartmentTypeId    = 1,
                LastUpdatedBy       = 556,
                MRMUserId           = 556,
                LastUpdatedDateTime = DateTime.Now
            };
            List <MRMUser_DepartmentType> userdepartmenttypelist = new List <MRMUser_DepartmentType>();
            userdepartmenttypelist.Add(userdepartmenttype);

            user.MRMUser_Channel         = userchannellist;
            user.MRMUser_DepartmentType  = userdepartmenttypelist;
            user.MRMUser_UserRole_Module = userrolemodule;
            #endregion

            #region mocking
            mockuserRepository.Setup(i => i.GetById(It.IsAny <long>())).Returns(user);
            mockuserRepository.Setup(i => i.GetSingle(It.IsAny <Expression <Func <MRMUser, bool> > >())).Returns(user);
            mockuserchannelRepository.Setup(i => i.GetMany(It.IsAny <Expression <Func <MRMUser_Channel, bool> > >())).Returns(userchannellist);
            mockuserchannelRepository.Setup(i => i.Delete(It.IsAny <MRMUser_Channel>()));
            mockuserrolemoduleRepository.Setup(i => i.GetMany(It.IsAny <Expression <Func <MRMUser_UserRole_Module, bool> > >())).Returns(userrolemodule);
            mockuserrolemoduleRepository.Setup(i => i.Delete(It.IsAny <MRMUser_UserRole_Module>()));
            mockuserdepartmenttypeRepository.Setup(i => i.GetMany(It.IsAny <Expression <Func <MRMUser_DepartmentType, bool> > >())).Returns(userdepartmenttypelist);
            mockuserdepartmenttypeRepository.Setup(i => i.Delete(It.IsAny <MRMUser_DepartmentType>()));
            mockuserRepository.Setup(i => i.Update(It.IsAny <MRMUser>()));
            mockuserRepository.Setup(i => i.Add(It.IsAny <MRMUser>())).Returns(user);
            mockunitofwork.Setup(i => i.Commit());
            #endregion

            #region service
            var userservice = new UserServiceMock(unitOfWork: mockunitofwork.Object, _userRepository: mockuserRepository.Object, userChannelRepository: mockuserchannelRepository.Object,
                                                  userRoleModuleRepository: mockuserrolemoduleRepository.Object, userDepartmentTypeRepository: mockuserdepartmenttypeRepository.Object);

            var result = userservice.Save(user, 556);

            #endregion

            #region Assets
            Assert.IsNotNull(result);
            Assert.IsTrue(userdepartmenttypelist.Count == 1);
            Assert.IsTrue(result.UserName.Equals("Test"));
            #endregion
        }