public Spec WillAuthenticateUserOnSuccessfulLogin(string input, Null output)
 {
     return
         new Spec(() => Ensure.True(User.IsAuthenticated))
             .If(UserIsNotLoggedOn)
             .IfAfter(UserIsLoggedOn);
 }
 public Spec WillUpdateLoginDateOnSuccessfulLogin(string input, Null output)
 {
     return 
         new Spec(() => Ensure.Equal(SystemTime.Now(), User.LastLogin))
             .If(UserIsNotLoggedOn)
             .IfAfter(UserIsLoggedOn);
 }
 public Spec WillNotUpdateBadLoginCountOnSuccessfulLogin(string input, Null output)
 {
     return
         new Spec(() => Ensure.Equal(BadLoginCount, User.BadLoginCount))
             .DoBefore(RememberBadLoginCount)
             .If(UserIsNotLoggedOn)
             .IfAfter(UserIsLoggedOn);
 }
 public Spec ClientIsRemovedFromCollection(IClientProxy input, Null output)
 {
     return new Spec(
         () => Ensure.False(GetBroadcastersClients().Contains(input)));
 }
 public Spec ClientExistsInCollection(Tuple<IClientProxy, int> input, Null output)
 {
     return new Spec(
         () => Ensure.True(GetBroadcastersClients().Contains(input.First)));
 }
 public Spec BroadCasterStopsBroadCastingDoesNotThrowEception(Null input, Null output)
 {
     return new Spec(
         () => Ensure.Null(StartThreadedTransition<Null, Null>.ExceptionFromThread));
 }