трюфельный тест будет работать только один контракт - PullRequest
1 голос
/ 06 ноября 2019

У меня проблема с нестабильностью. Я использую openzeppelin-test-helpers, и сначала у меня возникла проблема с машинописным текстом: «1001 *». Эта проблема была решена путем создания файла .d.ts, содержащего declare module "@openzeppelin/test-helpers";.

. Однако добавление этого создало новую проблему, заключающуюся в том, что в настоящее время * 1006 в большинстве случаев выполняется только один файл. * (Полагаю, это похоже на truffle test --reset).

Я получил 2 тестовых файла. Первый выглядит так:

require("chai")
    .use(require("chai-as-promised"))
    .should();

const EventHandler = artifacts.require("EventHandler");
const { expectRevert } = require("@openzeppelin/test-helpers");

contract("EventHandler", function([_, superAdmin0, admin0, device0]) {
    beforeEach(async function() {
        this.eventHandler = await EventHandler.new(superAdmin0);
    });
    describe("Initial tests", function() {
        it("should print hello", async function() {
            await this.eventHandler
                .printHello()
                .should.eventually.equal("Hello");
        });
    });
});

Второй выглядит так:

require("chai")
    .use(require("chai-as-promised"))
    .should();

const { expectRevert } = require("@openzeppelin/test-helpers");

const EventHandler = artifacts.require("EventHandler");

contract("Roles", function([_, superAdmin0, superAdmin1, admin0, device0]) {
    beforeEach(async function() {
        this.EventHandler = await EventHandler.new(superAdmin0);
    });
    it("...should work", async function() {});
});

Когда я комментирую содержимое одного файла или только то, что находится внутри contract(..., {}), другой файлработает просто отлично и тесты проходят успешно. Однако всякий раз, когда я оставляю эти 2 файла без комментариев, я получаю огромную ошибку:

Error: Returned values aren't valid, did it run Out of Gas?

Конечно, сброс ganache-cli ничего не решает ...

Кто-нибудь знает, гдеэто может прийти?

...