public void AcceptsCorrectParameters() { var mockTypeProperty = new Mock<IPropertyInfo>(); mockTypeProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeType)); mockTypeProperty.Setup(mp => mp.Name).Returns("BadgeType"); var mockStatusProperty = new Mock<IPropertyInfo>(); mockStatusProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeStatus)); var mockApprovedByIdProperty = new Mock<IPropertyInfo>(); mockApprovedByIdProperty.Setup(mp => mp.Type).Returns(typeof(int)); var newRule = new DefaultBadgeStatus(mockTypeProperty.Object, mockStatusProperty.Object, mockApprovedByIdProperty.Object); Assert.IsNotNull(newRule); }
public void StatusParameterCorrectType() { var mockTypeProperty = new Mock<IPropertyInfo>(); mockTypeProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeType)); mockTypeProperty.Setup(mp => mp.Name).Returns("BadgeType"); var mockStatusProperty = new Mock<IPropertyInfo>(); mockStatusProperty.Setup(mp => mp.Type).Returns(typeof(int)); var mockApprovedByIdProperty = new Mock<IPropertyInfo>(); mockApprovedByIdProperty.Setup(mp => mp.Type).Returns(typeof(int)); var newRule = new DefaultBadgeStatus(mockTypeProperty.Object, mockStatusProperty.Object, mockApprovedByIdProperty.Object); Assert.Fail("Rule Created when error should occur."); }
public void LeaveApprovedAlone() { var mockTypeProperty = new Mock<IPropertyInfo>(); mockTypeProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeType)); mockTypeProperty.Setup(mp => mp.Name).Returns("BadgeType"); var mockStatusProperty = new Mock<IPropertyInfo>(); mockStatusProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeStatus)); mockStatusProperty.Setup(mp => mp.Name).Returns("BadgeStatus"); var mockApprovedByIdProperty = new Mock<IPropertyInfo>(); mockApprovedByIdProperty.Setup(mp => mp.Type).Returns(typeof(int)); mockApprovedByIdProperty.Setup(mp => mp.Name).Returns("ApproveById"); var newRule = new DefaultBadgeStatus(mockTypeProperty.Object, mockStatusProperty.Object, mockApprovedByIdProperty.Object); var targetObject = new Mock<IActivityEdit>(); var ruleContext = new RuleContext(Complete, newRule, targetObject.Object, new Dictionary<IPropertyInfo, object> { { mockTypeProperty.Object, Common.Enums.BadgeType.Community }, { mockStatusProperty.Object, Common.Enums.ActivitySubmissionStatus.Approved }, { mockApprovedByIdProperty.Object, 54 } }); var ruleRunner = (IBusinessRule)newRule; ruleRunner.Execute(ruleContext); Assert.IsNotNull(newRule); Assert.IsNull(ruleContext.OutputPropertyValues); }
public void DoesNotRequireApproval() { var mockTypeProperty = new Mock<IPropertyInfo>(); mockTypeProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeType)); mockTypeProperty.Setup(mp => mp.Name).Returns("BadgeType"); var mockStatusProperty = new Mock<IPropertyInfo>(); mockStatusProperty.Setup(mp => mp.Type).Returns(typeof(Common.Enums.BadgeStatus)); mockStatusProperty.Setup(mp => mp.Name).Returns("BadgeStatus"); var mockApprovedByIdProperty = new Mock<IPropertyInfo>(); mockApprovedByIdProperty.Setup(mp => mp.Type).Returns(typeof(int)); mockApprovedByIdProperty.Setup(mp => mp.Name).Returns("ApproveById"); var newRule = new DefaultBadgeStatus(mockTypeProperty.Object, mockStatusProperty.Object, mockApprovedByIdProperty.Object); var targetObject = new Mock<IActivityEdit>(); var ruleContext = new RuleContext(Complete, newRule, targetObject.Object, new Dictionary<IPropertyInfo, object> { { mockTypeProperty.Object, Common.Enums.BadgeType.Corporate }, { mockStatusProperty.Object, Common.Enums.ActivitySubmissionStatus.Unset }, { mockApprovedByIdProperty.Object, 0 } }); var ruleRunner = (IBusinessRule)newRule; ruleRunner.Execute(ruleContext); Assert.IsNotNull(newRule); Assert.IsTrue(ruleContext.OutputPropertyValues.Count == 1); Assert.IsNotNull(ruleContext.OutputPropertyValues.SingleOrDefault(o => o.Key.Name == mockStatusProperty.Object.Name)); Assert.AreEqual(Common.Enums.BadgeStatus.Approved, ruleContext.OutputPropertyValues.Single(o => o.Key.Name == mockStatusProperty.Object.Name).Value); }