1

サイトの管理セクションにコントローラーがあり、役割が管理者に設定された承認フィルターで装飾されています。

[Authorize(Roles = "Admin")]
public class SubscriberController : Controller

これはうまく機能しますが、フィルターが削除されていないことを確認するための単体テストを作成したいと思います。これまでのところ、Authorizeフィルターが存在することを検証するために持っています。

        typeof(SubscriberController).Should()
            .BeDecoratedWith<AuthorizeAttribute>(
                "Subscriber controller users must be admins");

Roles引数を検証するにはどうすればよいですか?FluentAssertion1.7.1.1を使用しています。

FluentAssertionv2で可能になりました。

    typeof(SubscriberController).Should()
        .BeDecoratedWith<AuthorizeAttribute>(a => a.Roles.Contains("Admin"),
            "Subscriber controller users must be admins");
4

1 に答える 1

2

現在は不可能のようです-属性の引数のテスト

このスレッドをアップして、進捗状況について質問することができます。

于 2012-05-25T10:33:38.023 に答える