public void EMpStat_NotInAllowedlist_ReturnsFalse()
        {
            //arrange
            var dd28EmpStatTypeCode11Rule = new DD28Criteria1(_mock.Object);
            var param = new DD28SubModel()
            {
                LearningDeliveryObject = new MessageLearnerLearningDelivery()
                {
                },
                LearnerEmploymentStatusObj = new List <MessageLearnerLearnerEmploymentStatus>()
                {
                    new MessageLearnerLearnerEmploymentStatus()
                    {
                        EmpStat = 15,
                        EmploymentStatusMonitoring = new MessageLearnerLearnerEmploymentStatusEmploymentStatusMonitoring[]
                        {
                            new MessageLearnerLearnerEmploymentStatusEmploymentStatusMonitoring()
                            {
                                ESMCode = 5,
                                ESMType = "BIS"
                            }
                        }
                    }
                }
            };

            //act
            var actual = dd28EmpStatTypeCode11Rule.Evaluate(param);

            //assert
            Assert.False(actual);
        }
        public void ESMTypeAndCode_NotInAllowedValues_ReturnsFalse()
        {
            //arrange
            var dd28EmpStatTypeCode11Rule = new DD28Criteria1(_mock.Object);
            var param = new DD28SubModel()
            {
                LearningDeliveryObject     = new LearningDelivery(),
                LearnerEmploymentStatusObj = new List <LearnerEmploymentStatus>()
                {
                    new LearnerEmploymentStatus()
                    {
                        EmpStat = 12,
                        EmploymentStatusMonitorings = new List <EmploymentStatusMonitoring>()
                        {
                            new EmploymentStatusMonitoring()
                            {
                                ESMCode = "1",
                                ESMType = "DUMMy"
                            }
                        }
                    }
                }
            };

            //act
            var actual = dd28EmpStatTypeCode11Rule.Evaluate(param);

            //assert
            Assert.False(actual);
        }
        public void EmpStatESMTypeAndCode_InAllowedValues_ReturnsTrue()
        {
            //arrange
            var dd28EmpStatTypeCode11Rule = new DD28Criteria1(_mock.Object);
            var param = new DD28SubModel()
            {
                LearningDeliveryObject = new MessageLearnerLearningDelivery()
                {
                },
                LearnerEmploymentStatusObj = new List <MessageLearnerLearnerEmploymentStatus>()
                {
                    new MessageLearnerLearnerEmploymentStatus()
                    {
                        EmpStat = 11,
                        EmploymentStatusMonitoring = new MessageLearnerLearnerEmploymentStatusEmploymentStatusMonitoring[]
                        {
                            new MessageLearnerLearnerEmploymentStatusEmploymentStatusMonitoring()
                            {
                                ESMCode = 3,
                                ESMType = "BSI"
                            },
                            new MessageLearnerLearnerEmploymentStatusEmploymentStatusMonitoring()
                            {
                                ESMCode = 1,
                                ESMType = "DUmmy"
                            }
                        }
                    }
                }
            };

            //act
            var actual = dd28EmpStatTypeCode11Rule.Evaluate(param);

            //assert
            Assert.True(actual);
        }