public override Task PostConditions(InviteTenantAdminCmd cmd, InviteTenantAdminResult.IInviteTenantAdminResult result, BackofficeWriteContext state)
 {
     result.Match(
         invited =>
     {
         Assert.True(true);
         Assert.True(cmd.ValidateObject());
         return(invited);
     },
         notInvited =>
     {
         Assert.True(false);
         return(notInvited);
     },
         invalidRequest =>
     {
         Assert.True(false);
         Assert.False(cmd.ValidateObject());
         return(invalidRequest);
     }
         );
     return(Task.CompletedTask);
 }
 private Task OnInvalidInput(InviteTenantAdminCmd cmd, InviteTenantAdminResult.IInviteTenantAdminResult result, BackofficeWriteContext state)
 {
     result.Match(
         invited =>
     {
         Assert.True(cmd.ValidateObject(), "The command is expected to be invalid");
         Assert.True(false, "Somethin went wrong when creating the tenant");
         return(invited);
     },
         notInvited =>
     {
         Assert.True(false, "Received 'NotInvited', expected InvalidRequest");
         return(notInvited);
     },
         invalidRequest =>
     {
         Assert.True(true);
         Assert.False(cmd.ValidateObject(), "The command should be invalid");
         return(invalidRequest);
     }
         );
     return(Task.CompletedTask);
 }