public void checking_denied_ability_should_log_it() { AbilityConfiguration.Debug(t => debugMessages.Add(t)); Then.IShouldNotBeAbleTo("view", "order"); debugMessages.ShouldContain("user cannot view/order"); }
public void no_logging_happens_when_ability_is_not_checked() { AbilityConfiguration.Debug(t => debugMessages.Add(t)); AbilityConfiguration.ConfigureWith(c => c.Allow("view").On("order")); debugMessages.ShouldNotContain("user has the ability to view/order") .ShouldNotContain("user can view/order"); }
public static void Configure() { AbilityConfiguration.Debug(message => Trace.Write(string.Format("Authorization: {0}", message))).Verbose(); AbilityConfiguration.ConfigureCache(new PerRequestHttpCache()); AbilityConfiguration.ConfigureWith( config => new AbilityConfigurator(config, System.Web.HttpContext.Current.User) ); AbilityMvcConfiguration.ConfigureUnauthorizedActionResult(new HttpUnauthorizedResult()); }
public void checking_ability_with_verbosity_should_log_it() { AbilityConfiguration.Debug(t => debugMessages.Add(t)).Verbose(); AbilityConfiguration.ConfigureWith(c => c.Allow("view").On("order")); Then.IShouldBeAbleTo("view", "order"); debugMessages.ShouldContain("user has the ability to view/order") .ShouldContain("user can view/order"); }
public void configured_alias_logs_verbose() { var debugMessages = new List <string>(); AbilityConfiguration.Debug(debugMessages.Add).Verbose(); AbilityConfiguration.ConfigureWith(c => { c.Allow("view").On("customer"); c.ConfigureActionAliases("view", "consult"); }); Then.IShouldBeAbleTo("consult", "customer"); debugMessages.ShouldContain("creating action alias 'consult = view'"); }
public void subject_alias_is_logged_in_verbose_mode() { var messages = new List <string>(); AbilityConfiguration.Debug(messages.Add).Verbose(); AbilityConfiguration.ConfigureWith(c => { c.Allow("view").On("customer"); c.ConfigureSubjectAliases("customer", "customers"); }); Then.IShouldBeAbleTo("view", "customers"); messages.ShouldContain("creating subject alias 'customers = customer'"); }
public void overwriting_alias_logs_the_change_on_verbose() { var debugMessages = new List <string>(); AbilityConfiguration.Debug(debugMessages.Add).Verbose(); AbilityConfiguration.ConfigureWith(c => { c.Allow("update").On("customer"); c.ConfigureActionAliases("view", "consult"); c.ConfigureActionAliases("edit", "consult"); }); Then.IShouldBeAbleTo("consult", "customer"); debugMessages.ShouldContain("overwriting action alias 'consult = edit' (was 'consult = view')"); }