const assert = require('assert');
const ganache = require('ganache-cli');
const Web3 = require('web3');
const web3 = new Web3(ganache.provider());
const { interface, bytecode } = require('../compile');
let accounts;
let inbox;
beforeEach(async () => {
// Get a list of all accounts
accounts = await web3.eth.getAccounts();
// Use one of those accounts to deploy
// the contract
inbox = await new web3.eth.Contract(JSON.parse(interface))
.deploy({
data: bytecode,
arguments: ['Hi there!']
})
.send({ from: accounts[0], gas: '1000000' });
});
describe('Inbox', () => {
it('deploys a contract', () => {
assert.ok(inbox.options.address);
});
it('has a default message', async () => {
const message = await inbox.methods.message().call();
assert.equal(message, 'Hi there!');
});
it('can change the message', async () => {
await inbox.methods.setMessage('bye').send({ from: accounts[0] });
const message = await inbox.methods.message().call();
assert.equal(message, 'bye');
});
});
после выполнения вышеуказанного кода я продолжаю получать следующую ошибку
inbox@1.0.0 test C: \ Users \ user \ Documents \ inbox
Мокко
Входящие
1) «перед каждым» зацепка за «развертывание контракта»
0 прохождение (98мс)
1 ошибка
1) «перед каждым» зацепка за «развертывание контракта»:
SyntaxError: неожиданный токен u в JSON в позиции 0
в JSON.parse ()
at Context.beforeEach (test \ inbox.test.js: 16: 44)
в
нпм ERR! код ELIFECYCLE
нпм ERR! Errno 1
нпм ERR! inbox@1.0.0 test: mocha
нпм ERR! Статус выхода 1
нпм ERR!
нпм ERR! Ошибка в тестовом скрипте inbox@1.0.0.
нпм ERR! Это, вероятно, не проблема с npm. Скорее всего, выше вывод журнала.
нпм ERR! Полный журнал этого прогона можно найти в:
нпм ERR! C: \ Users \ пользователь \ AppData \ Roaming \ NPM-cache_logs \ 2018-07-03T13_17_54_895Z-debug.log
C: \ Users \ пользователь \ Documents \ Входящие \ тест>