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?

例 : CheckResults

以下のコードは、CheckResults をオーバーライドします。このコードの目的は、プロダクションの実行結果と Tutorial.ExampleOperation に送信した 2 つの要求メッセージの送信結果を検証することです。このコードは、以下の処理を実行します。

  • イベント・ログに新しい 2 つの “ユーザ” エントリがあることを確認します。ビジネス・オペレーションは、要求メッセージの処理を終えるたびに新いエントリを追加します。New 変数には、新しいユーザ・イベント・ログ・エントリの数が含まれます。

  • 最初のイベント・ログ・エントリのテキスト・コンテンツが “OK” であることを確認します。

  • 2 つ目のイベント・ログ・エントリのテキスト・コンテンツが “ERROR” であることを確認します。


Method CheckResults(ByRef Log As %String, New As %String) As %Status
{
 Set tSC = $$$OK 
 Set r = $$$AssertEquals($Get(New),2,"Should be 2 (found: "_+$Get(New)_")")

 Set text = $Get(Log(1,"Text"))
 Do $$$AssertEquals(text,"OK","Should be 'OK' (found: '"_text_"')")

 Set text = $Get(Log(2,"Text"))
 Do $$$AssertEquals(text,"ERROR","Should be 'ERROR' (found: '"_text_"')")

 if 'r set tSC=..Error("Expected event log entries don't match")

 Quit tSC
}

Log 配列には、イベント・ログ情報の各部 (TextTypeTimeLoggedSessionIdSourceMethodConfigName など) に対応するノードが含まれています。

Note:

ビジネス・オペレーションは、$$$LOGINFO マクロを使用して、イベント・ログにエントリを追加しました。

FeedbackOpens in a new tab