Тестирование задачи сборки конвейеров Azure завершилось неудачно с ошибкой: «Необходимо инициализировать» - PullRequest
0 голосов
/ 15 февраля 2019

, когда я вызываю index.js напрямую, используя узел, он работает, но когда я запускаю тесты mocha, задача завершается с сообщением об ошибке «Must initialize».

мои задачи index.ts выглядят так:

import * as path from "path";
import tl = require('azure-pipelines-task-lib/task');
import trm = require('azure-pipelines-task-lib/toolrunner');
import os = require('os');

async function run() {
    try {
        const libmanJson = tl.getPathInput('libmanjson', true, true); //this throws
    }
    catch (err) {
        console.log(err.message);
        tl.setResult(tl.TaskResult.Failed, err.message);
    }
}

тесты мокко скопированы отсюда: docs.microsoft.com: Добавить задачу сборки или выпуска

1 Ответ

0 голосов
/ 18 июля 2019

Обнаружена та же проблема, решенная путем предоставления ответов TaskMockRunner

let a: ma.TaskLibAnswers = <ma.TaskLibAnswers>{
    "which": {
        "echo": "/mocked/tools/echo"
    },
    "exec": {
        "/mocked/tools/echo Hello, from task!": {
            "code": 0,
            "stdout": "atool output here",
            "stderr": "atool with this stderr output"            
        }
    }
};
tmr.setAnswers(a)
...