sitecore
診断:アサート
サーチ…
構文
- Assert.ArgumentCondition(ブール条件、文字列引数、文字列メッセージ)
- Assert.ArgumentNotNull(オブジェクト引数、文字列argumentName)
- Assert.ArgumentNotNull(オブジェクト引数、Func <文字列> getArgumentName)
- Assert.ArgumentNotNullOrEmpty(ID引数、文字列引数)
- Assert.ArgumentNotNullOrEmpty(文字列引数、文字列引数名)
- Assert.ArgumentNotNullOrEmpty(文字列引数、Func <文字列> getArgumentName)
- Assert.AreEqual(int value1、int value2、string message)
- Assert.AreEqual(int value1、int value2、文字列形式、paramsオブジェクト[] args)
- Assert.AreEqual(文字列値1、文字列値2、文字列メッセージ)
- Assert.AreEqual(文字列値1、文字列値2、文字列形式、paramsオブジェクト[] args)
- Assert.AreEqual(ブール値1、ブール値2、文字列メッセージ)
- Assert.AreEqual(ブール値1、ブール値2、文字列形式、paramsオブジェクト[] args)
- Assert.CanRunApplication(文字列アプリケーション)
- Assert.HasAccess(ブールaccessAllowed、文字列メッセージ)
- Assert.HasAccess(bool accessAllowed、文字列形式、paramsオブジェクト[] args)
- Assert.IsEditing(アイテムアイテム)
- Assert.IsFalse(ブール状態、文字列メッセージ)
- Assert.IsFalse(ブール条件、Func <文字列> getMessage)
- Assert.IsTrue(ブール条件、文字列形式、paramsオブジェクト[] args)
- Assert.IsNotNull(オブジェクト値、文字列メッセージ)
- Assert.IsNotNull(オブジェクト値、文字列形式、paramsオブジェクト[] args)
- Assert.IsNotNull(オブジェクト値、型の型)
- Assert.IsNotNull(オブジェクト値、型の型、文字列の形式、paramsオブジェクト[] args)
- Assert.IsNotNullOrEmpty(文字列値、文字列メッセージ)
- Assert.IsNotNullOrEmpty(文字列値、文字列形式、paramsオブジェクト[] args)
- Assert.IsNull(オブジェクト値、文字列メッセージ)
- Assert.IsNull(オブジェクト値、文字列形式、paramsオブジェクト[] args)
- Assert.IsTrue(ブール状態、文字列メッセージ)
- Assert.IsTrue(ブール条件、Func <文字列> getMessage)
- Assert.IsTrue(ブール条件、文字列形式、paramsオブジェクト[] args)
- Assert.Required(オブジェクトobj、文字列メッセージ)
- Assert.Required(オブジェクトobj、文字列形式、paramsオブジェクト[] args)
- Assert.ResultNotNull <T>(Tの結果、文字列メッセージ)
- Assert.ResultNotNull <T>(Tの結果)
2つの値が等しいことを確認する
2つの値が等しいかどうかを比較します。文字列、整数、およびブール値のみを比較できます。
Assert.AreEqual(documentElement.LocalName, "xamlControls", "Xaml files must have a root node named 'xamlControls'.");
値がtrueまたはfalseであることを確認する
値がtrueまたはfalseであることをアサートするには、次のようにします。
Assert.IsFalse(Settings.DoBadThings, "Bad things should not happen, disable DoBadThings.");
Assert.IsTrue(magicNumber =< 42, "The magic number is greater than 42!");
例外メッセージの書式設定パラメータを渡すこともできます
Assert.IsFalse(myValue > 5, "The value should not be greater than 5, it's currently {0}", myValue);
ResultNotNull
ResultNotNull()
は、渡されたオブジェクトがnullでないかどうかを確認します。オブジェクトとメッセージがnullでない場合、渡されたオブジェクトを単に返します。そうでない場合、 InvalidOperationException
がスローされInvalidOperationException
。
return Assert.ResultNotNull(this.Database.GetItem(this.ItemRootId), string.Concat("Root item not found. ID: ", this.ItemRootId));
必須オブジェクト
これは、指定されたオブジェクトがnullかどうかを確認してから、 RequiredObjectIsNullException
をスローします。
Assert.Required(parameter, "parameter is required.");
空/空チェック
IsNotNull
これは、項目がnullでないかどうかを確認するために使用する、非常に簡単で一般的な方法です。渡されたオブジェクトがnullかどうかを調べるだけです。
Assert.IsNotNull(database, type, "Name: {0}", item);
IsNotNullOrEmpty
これは上記のIsNotNullと同じですが、オブジェクトではなく文字列値で機能します。
Assert.IsNotNullOrEmpty(propertyName, "user");
無効です
これは単純にIsNotNull()
メソッドの逆です。このメソッドは、オブジェクトがnullであることを示します。
Assert.IsNull(this.StandardValues, "A Standard Values item has already been created for this template ");
引数チェック
ArgumentCondition
このメソッドは、指定された引数がtrueかどうかを確認します。また、条件が失敗した場合にログに記録される引数の名前も使用されます。
Assert.ArgumentCondition(pageIndex >= 0, "pageIndex", "Value must be greater than or equal to zero.");
ArgumentNotNull
このメソッドは、渡された引数がnullでないことを確認します。このメソッドには2つのシグネチャがあり、最初はオブジェクトとパラメータ名を取り込み、単純なヌルチェックを行います。
Assert.ArgumentNotNull(item, "item");
ArgumentNotNullOrEmpty
これはArgumentNotNullメソッドに似ていますが、オブジェクトが空であるかどうかをチェックすることもあります。このメソッドには3つのバリエーションがあります。最初の変種は、Sitecore IDと引数名を取り込み、IDがnullかどうかを確認します。
var nullId = new new ID("{00000000-0000-0000-0000-000000000000}");
// Both of these calls will result in an exception
Assert.ArgumentNotNullOrEmpty((ID)null, "null");
Assert.ArgumentNotNullOrEmpty(nullId, nameof(nullId));
2番目のメソッドは、指定された文字列がnullか空であるかどうかを確認するためのチェックを追加します。
// Both of these calls will result in an exception
Assert.ArgumentNotNullOrEmpty((string)null, "null");
Assert.ArgumentNotNullOrEmpty("", nameof(emptyString));
アイテムが編集モードになっていることを確認する
渡されたItem
が編集モードであるかどうかを確認します。そうでなければ、 EditingNotAllowedException
スローしEditingNotAllowedException
。
Assert.IsEditing(Sitecore.Context.Item);
セキュリティアサーション
CanRunApplication
ユーザーに与えられたアプリケーションを実行する権限があるかどうかを確認する。そうでない場合は、 AccessDeniedException
がスローされます。
Assert.CanRunApplication("WebEdit");
HasAccess
HasAccess
は、指定されたパラメータがtrueかどうかをチェックします。そうでない場合は、 AccessDeniedException
がスローされます。
Assert.HasAccess(Context.User.IsAdministrator, "Only administrators can create new domains");