例:設定メソッドおよびティアダウン・メソッドのテストへの追加
この例では、TestEditContact というテスト・メソッドを追加します。このメソッドは、MyPackage.Contact クラスの ContactType プロパティの値が、“Personal” または “Business” のいずれかに制限されていることを確認します。テストを実行する前にデータベースを準備する OnBeforeAllTests メソッドを追加します。また、テストが実行された後でデータベース状態をリストアする OnAfterAllTests メソッドも追加します。
-
VS Code で MyPackage.Tests を開きます。
-
OnBeforeAllTests メソッドと OnAfterAllTests メソッドを追加します。
Method OnBeforeAllTests() As %Status { Do ##class(MyPackage.Contact).Populate(1) Return $$$OK }
Method OnAfterAllTests() As %Status { Do ##class(MyPackage.Contact).%KillExtent() Return $$$OK }
OnBeforeAllTests メソッドは、データベースに 1 つの Contact インスタンスを追加します。OnAfterAllTests メソッドは、データベースからすべての Contact インスタンスを削除します。
-
TestEditContact テスト・メソッドを MyPackage.Tests に追加します。
Method TestEditContact() { set contact=##class(MyPackage.Contact).%OpenId(1) set contact.Name="Rockwell,Norman" set contact.ContactType="Friend" Do $$$AssertStatusNotOK(contact.%Save(),"ContactType = Friend") Set contact.ContactType="Personal" Do $$$AssertStatusOK(contact.%Save(),"ContactType = Personal") }
このメソッドは、ContactType に無効な値を割り当てた後と ContactType に有効な値を割り当てた後の 2 つの条件下で、Contact に対して %Save を実行し、それによって返される状態値をテストします。
-
Tests クラス・ファイルを C:\unittests\mytests\cls\MyPackage にコピーします。既存のファイルは上書きします。