Main Content

join

クラス: matlab.unittest.diagnostics.Diagnostic
パッケージ: matlab.unittest.diagnostics

複数の診断の単一配列への結合

構文

diagArray = join(diag1,...,diagN)

説明

diagArray = join(diag1,...,diagN) は、diag1diagN で指定される複数の診断を 1 つの配列 diagArray に結合します。

入力引数

diag

診断内容。Diagnostic オブジェクト、string 配列、文字配列、関数ハンドルまたは任意の型のインスタンスとして指定します。

出力引数

diagArray

結合された診断内容の配列。

  • diagNDiagnostic から派生したオブジェクトである場合は、変更されていない配列に含まれます。

  • diagNchar または string の場合、StringDiagnostic の形式に変換されて、配列に含まれます。

  • diagNfunction_handle の場合は、FunctionHandleDiagnostic の形式に変換されて、配列に含まれます。

  • diagN が他の型である場合は、DisplayDiagnostic の形式に変換されて、配列に含まれます。

すべて展開する

        % The following example creates a diagnostic array of length 4,
        % demonstrating standard Diagnostic conversions. Note:
        % MyCustomDiagnostic is for example purposes and is not executable
        % code.
 
        import matlab.unittest.diagnostics.Diagnostic
        import matlab.unittest.constraints.IsTrue
 
        arbitraryValue = 5;
        testCase.verifyThat(false, IsTrue, ...
            Diagnostic.join(...
                'should have been true', ...
                @() system('ps'), ...
                arbitraryValue, ...
                MyCustomDiagnostic))

代替方法

少なくとも 1 つの値が診断である場合は、配列連結を使用して診断を 1 つの配列に結合します。join メソッドを使用すると、配列に Diagnostics を含める必要がなくなります。次の例を考えます。

arbitraryValue = 5;
testCase.verifyThat(false, IsTrue, ...
    ['should have been true', ...
    @() system('ps'), ...
    arbitraryValue, ...
    MyCustomDiagnostic]);

MyCustomDiagnosticDiagnostic であるため、他の値も診断に正しく変換されます。