Class RequestTestingMessagingProvider.RequestTestingMessagingContext

java.lang.Object
nablarch.fw.messaging.MessagingContext
nablarch.test.core.messaging.RequestTestingMessagingProvider.RequestTestingMessagingContext
All Implemented Interfaces:
Closeable, AutoCloseable
Enclosing class:
RequestTestingMessagingProvider

public static class RequestTestingMessagingProvider.RequestTestingMessagingContext extends nablarch.fw.messaging.MessagingContext
テストを行う際に、要求電文のアサートおよび応答電文を返却するMessagingContext。

アサート用の要求電文および応答電文は、Excelのテストケースから読み込むことを想定している。

本クラスを使用する場合、キューへのアクセスは行われない。

Author:
Masato Inoue
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    assertSendingMessage(Class<?> testClass, String sheetName, String caseNo, String expectedRequestMessageId)
    要求メッセージのアサートを行う。
    static void
    リクエスト単体テスト時に使用する要求電文のキャッシュをクリアする。
    void

    この実装では何も行わない。
    static void
    initializeForRequestUnitTesting(Class<?> clazz, String sheetName, String no, String responseMessageId, String expectedMessageId)
    リクエスト単体テスト時の初期化処理を行う。
    nablarch.fw.messaging.ReceivedMessage
    receiveMessage(String receiveQueue, String messageId, long timeout)

    この実装ではこのメソッドはサポートしない。
    send(nablarch.fw.messaging.SendingMessage message)

    sendMessage(nablarch.fw.messaging.SendingMessage message)

    nablarch.fw.messaging.ReceivedMessage
    sendSync(nablarch.fw.messaging.SendingMessage message, long timeout)

    この実装では、sendSyncメソッドをオーバーライドし、要求電文のアサートおよび、応答電文の返却を行う。

    Methods inherited from class nablarch.fw.messaging.MessagingContext

    attach, detach, emitLog, getInstance, receiveSync, receiveSync, receiveSync, sendSync

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RequestTestingMessagingContext

      public RequestTestingMessagingContext()
  • Method Details

    • initializeForRequestUnitTesting

      public static void initializeForRequestUnitTesting(Class<?> clazz, String sheetName, String no, String responseMessageId, String expectedMessageId)
      リクエスト単体テスト時の初期化処理を行う。

      本機能のリクエスト単体テストを動作させるために必要なプロパティをstatic領域に設定する。 また、要求電文のキャッシュをクリアする。

      Parameters:
      clazz - テストケースのクラス
      sheetName - シート名
      no - テストケース番号
      responseMessageId - 応答電文のID
      expectedMessageId - 要求電文のID
    • clearSendingMessageCache

      public static void clearSendingMessageCache()
      リクエスト単体テスト時に使用する要求電文のキャッシュをクリアする。

      本機能のリクエスト単体テストで使用する要求電文のキャッシュをクリアする。

    • sendSync

      public nablarch.fw.messaging.ReceivedMessage sendSync(nablarch.fw.messaging.SendingMessage message, long timeout)

      この実装では、sendSyncメソッドをオーバーライドし、要求電文のアサートおよび、応答電文の返却を行う。

      本メソッドは、要求電文ヘッダに「requestId」という名前のフィールドがある前提で動作する。

      Overrides:
      sendSync in class nablarch.fw.messaging.MessagingContext
    • assertSendingMessage

      public static void assertSendingMessage(Class<?> testClass, String sheetName, String caseNo, String expectedRequestMessageId)
      要求メッセージのアサートを行う。
      Parameters:
      testClass - テストクラス
      sheetName - シート名
      caseNo - テストケース番号
      expectedRequestMessageId - 要求電文(期待値)のID
    • close

      public void close()

      この実装では何も行わない。
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in class nablarch.fw.messaging.MessagingContext
    • send

      public String send(nablarch.fw.messaging.SendingMessage message) throws UnsupportedOperationException

      Overrides:
      send in class nablarch.fw.messaging.MessagingContext
      Throws:
      UnsupportedOperationException
    • sendMessage

      public String sendMessage(nablarch.fw.messaging.SendingMessage message) throws UnsupportedOperationException

      Specified by:
      sendMessage in class nablarch.fw.messaging.MessagingContext
      Throws:
      UnsupportedOperationException
    • receiveMessage

      public nablarch.fw.messaging.ReceivedMessage receiveMessage(String receiveQueue, String messageId, long timeout) throws UnsupportedOperationException

      この実装ではこのメソッドはサポートしない。
      Specified by:
      receiveMessage in class nablarch.fw.messaging.MessagingContext
      Throws:
      UnsupportedOperationException - このメソッドが呼ばれた場合にスローされる例外