Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

例 : OnAfterProductionStart

以下のコードは、テスト・クラス Tutorial.ProductionTest に含まれており、OnAfterProductionStart をオーバーライドします。このコードは、プロダクションが正常に開始した後に実行され、以下の処理を行います。

  • SendRequest を使用して、2 つの Ensemble 要求メッセージを作成し、Ensemble テスト・サービスに送信します。テスト・サービスが要求メッセージを Tutorial.ExampleProduction ビジネス・オペレーションに転送する各ケースにおいて、そのビジネス・オペレーションには Tutorial.ExampleOperation という名前が付けられます。

  • $$$AssertEquals を使用して、最初の応答の内容を確認します。response という名前の変数は、参照によって SendRequest に渡されることに注意してください。メソッドが返されるときに、この変数はビジネス・オペレーションからの応答メッセージを指します。

  • 2 つ目の要求メッセージには、その StringValue プロパティに NULL 値が含まれています。これにより、ビジネス・オペレーションはエラーを生成して返します。


Method OnAfterProductionStart() As %Status
{
 Set request = ##class(Ens.StringRequest).%New()
 set request.StringValue="Hello Ensemble"
 Set tSC = ..SendRequest( "Tutorial.ExampleOperation" ,request, 
                                                       .response,1,40)
 Do $$$AssertEquals(response.StringValue,"OK","Response should contain OK.")
 Set request.StringValue=""
 Set tSC = ..SendRequest( "Tutorial.ExampleOperation" ,request, 
                                                        .response,1,40)
 Quit $$$OK
}
Note:

%UnitTest.TestCaseOpens in a new tab によってサポートされているマクロおよび AssertX メソッドの一覧は、"Caché %UnitTest チュートリアル" の "%UnitTest クラス" を参照してください。

参照によってメソッドの引数を渡す処理の詳細は、"Caché オブジェクトの使用法" の "メソッド" の節の "参照渡し" を参照してください。

FeedbackOpens in a new tab