public void ApplyRule_WhenThereIsAOneRule_ShouldIsEnableAndIsVisibleCalledOnce() { // Arrange var restrictedPermission = new RestrictedPermission(this.permissionSettings, this.permissionRules); // Act restrictedPermission.ApplyRules(); // Assert this.mockPermission.Received(1).IsEnabled(this.permissionSettings); this.mockPermission.Received(1).IsVisible(this.permissionSettings); }
public void ApplyRule_WhenThereIsAOneRuleReturnTrue_ShouldIsEnableAndIsVisibleEqualToRule() { // Arrange this.mockPermission.IsEnabled(this.permissionSettings).Returns(true); this.mockPermission.IsVisible(this.permissionSettings).Returns(true); var restrictedPermission = new RestrictedPermission(this.permissionSettings, this.permissionRules); // Act restrictedPermission.ApplyRules(); // Assert Assert.That(restrictedPermission.IsVisible, Is.EqualTo(true)); Assert.That(restrictedPermission.IsEnabled, Is.EqualTo(true)); }
public void ApplyRule_WhenThereAreTwoRulesAndTheFirstOneIsEnabledIsFalse_ShouldSecondRuleIsEnabledCalledNever() { // Arrange this.mockPermission.IsEnabled(this.permissionSettings).Returns(false); var secondMockedRule = Substitute.For <IPermissionRule>(); this.permissionRules.Add(secondMockedRule); var restrictedPermission = new RestrictedPermission(this.permissionSettings, this.permissionRules); // Act restrictedPermission.ApplyRules(); // Assert secondMockedRule.DidNotReceive().IsEnabled(this.permissionSettings); }