exponenta event banner

соединение

Класс: matlab.unittest.diagnostics.Diagnostics
Пакет: matlab.unittest.diagnostics

Объединение нескольких средств диагностики в один массив

Синтаксис

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

Описание

diagArray = join(diag1,...,diagN) объединяет множественную диагностику, заданную diag1 через diagN, в один массив, diagArray.

Входные аргументы

diag

Диагностическое содержимое, указанное как экземпляр Diagnostic объект, строковый массив, символьный массив, дескриптор функции или произвольный тип.

Выходные аргументы

diagArray

Массив объединенного диагностического содержимого.

  • Если diagN является объектом, производным от Diagnostic, он включен в массив без изменений.

  • Если diagN является char или string, он формируется в StringDiagnostic и входит в массив.

  • Если diagN является function_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))

Альтернативы

Можно использовать диагностику объединения массивов в массив, если хотя бы одно из значений является диагностическим. join метод предотвращает необходимость Diagnostics в массиве. Рассмотрим следующий пример.

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

С тех пор MyCustomDiagnostic является Diagnosticдругие значения также корректно преобразуются в диагностику.