Commit 52ba2190 authored by aniket-engg's avatar aniket-engg Committed by Aniket

tests running fine using jest

parent ea2afe98
...@@ -252,7 +252,7 @@ function run (self, tx, stamp, confirmationCb, gasEstimationForceSend, promptCb, ...@@ -252,7 +252,7 @@ function run (self, tx, stamp, confirmationCb, gasEstimationForceSend, promptCb,
self.queusTxs.push({ tx, stamp, callback }) self.queusTxs.push({ tx, stamp, callback })
} else { } else {
self.pendingTxs[stamp] = tx self.pendingTxs[stamp] = tx
self.execute(tx, confirmationCb, gasEstimationForceSend, promptCb, (error, result) => { self.execute(tx, confirmationCb, gasEstimationForceSend, promptCb, function(error, result) {
delete self.pendingTxs[stamp] delete self.pendingTxs[stamp]
callback(error, result) callback(error, result)
if (self.queusTxs.length) { if (self.queusTxs.length) {
......
module.exports = { module.exports = {
name: 'remix-tests', name: 'remix-tests',
preset: '../../jest.config.js', preset: '../../jest.config.js',
verbose: true,
transform: { transform: {
'^.+\\.[tj]sx?$': 'ts-jest', '^.+\\.[tj]sx?$': 'ts-jest',
}, },
testTimeout: 30000,
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'html', 'json', 'sol'], moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'html', 'json', 'sol'],
coverageDirectory: '../../coverage/libs/remix-tests', coverageDirectory: '../../coverage/libs/remix-tests'
}; };
\ No newline at end of file
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
}, },
"scripts": { "scripts": {
"build": "tsc", "build": "tsc",
"test": "./../../node_modules/.bin/mocha --require ts-node/register --require tsconfig-paths/register tests/testRunner.ts -t 300000" "test": "./../../node_modules/.bin/jest"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
......
...@@ -40,7 +40,7 @@ function deepEqualExcluding(a: any, b: any, excludedKeys: string[]) { ...@@ -40,7 +40,7 @@ function deepEqualExcluding(a: any, b: any, excludedKeys: string[]) {
} }
let accounts: string[] let accounts: string[]
let provider = new Provider() let provider: any = new Provider()
async function compileAndDeploy(filename: string, callback: Function) { async function compileAndDeploy(filename: string, callback: Function) {
let web3: Web3 = new Web3() let web3: Web3 = new Web3()
...@@ -101,7 +101,7 @@ describe('testRunner', () => { ...@@ -101,7 +101,7 @@ describe('testRunner', () => {
describe('#runTest', () => { describe('#runTest', () => {
describe('test with beforeAll', () => { describe('test with beforeAll', () => {
const filename: string = '../tests/examples_1/simple_storage_test.sol' const filename: string = __dirname + '/examples_1/simple_storage_test.sol'
beforeAll((done) => { beforeAll((done) => {
compileAndDeploy(filename, (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) => { compileAndDeploy(filename, (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) => {
...@@ -122,7 +122,7 @@ describe('testRunner', () => { ...@@ -122,7 +122,7 @@ describe('testRunner', () => {
it('should return 6 messages', () => { it('should return 6 messages', () => {
deepEqualExcluding(tests, [ deepEqualExcluding(tests, [
{ type: 'accountList', value: accounts }, { type: 'accountList', value: accounts },
{ type: 'contract', value: 'MyTest', filename: 'tests/examples_1/simple_storage_test.sol' }, { type: 'contract', value: 'MyTest', filename: __dirname + '/examples_1/simple_storage_test.sol' },
{ type: 'testPass', value: 'Initial value should be100', context: 'MyTest' }, { type: 'testPass', value: 'Initial value should be100', context: 'MyTest' },
{ type: 'testPass', value: 'Initial value should not be200', context: 'MyTest' }, { type: 'testPass', value: 'Initial value should not be200', context: 'MyTest' },
{ type: 'testFailure', value: 'Should trigger one fail', errMsg: 'uint test 1 fails', context: 'MyTest' }, { type: 'testFailure', value: 'Should trigger one fail', errMsg: 'uint test 1 fails', context: 'MyTest' },
...@@ -132,7 +132,7 @@ describe('testRunner', () => { ...@@ -132,7 +132,7 @@ describe('testRunner', () => {
}) })
describe('test with beforeEach', () => { describe('test with beforeEach', () => {
const filename: string = 'tests/examples_2/simple_storage_test.sol' const filename: string = __dirname + '/examples_2/simple_storage_test.sol'
beforeAll(done => { beforeAll(done => {
compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) { compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) {
...@@ -153,7 +153,7 @@ describe('testRunner', () => { ...@@ -153,7 +153,7 @@ describe('testRunner', () => {
it('should return 4 messages', () => { it('should return 4 messages', () => {
deepEqualExcluding(tests, [ deepEqualExcluding(tests, [
{ type: 'accountList', value: accounts }, { type: 'accountList', value: accounts },
{ type: 'contract', value: 'MyTest', filename: 'tests/examples_2/simple_storage_test.sol' }, { type: 'contract', value: 'MyTest', filename: __dirname + '/examples_2/simple_storage_test.sol' },
{ type: 'testPass', value: 'Initial value should be100', context: 'MyTest' }, { type: 'testPass', value: 'Initial value should be100', context: 'MyTest' },
{ type: 'testPass', value: 'Value is set200', context: 'MyTest' } { type: 'testPass', value: 'Value is set200', context: 'MyTest' }
], ['time']) ], ['time'])
...@@ -162,7 +162,7 @@ describe('testRunner', () => { ...@@ -162,7 +162,7 @@ describe('testRunner', () => {
// Test string equality // Test string equality
describe('test string equality', () => { describe('test string equality', () => {
const filename: string = 'tests/examples_3/simple_string_test.sol' const filename: string = __dirname + '/examples_3/simple_string_test.sol'
beforeAll(done => { beforeAll(done => {
compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) { compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) {
...@@ -179,7 +179,7 @@ describe('testRunner', () => { ...@@ -179,7 +179,7 @@ describe('testRunner', () => {
it('should return 4 messages', () => { it('should return 4 messages', () => {
deepEqualExcluding(tests, [ deepEqualExcluding(tests, [
{ type: 'accountList', value: accounts }, { type: 'accountList', value: accounts },
{ type: 'contract', value: 'StringTest', filename: 'tests/examples_3/simple_string_test.sol' }, { type: 'contract', value: 'StringTest', filename: __dirname + '/examples_3/simple_string_test.sol' },
{ type: 'testPass', value: 'Initial value should be hello world', context: 'StringTest' }, { type: 'testPass', value: 'Initial value should be hello world', context: 'StringTest' },
{ type: 'testPass', value: 'Value should not be hello wordl', context: 'StringTest' } { type: 'testPass', value: 'Value should not be hello wordl', context: 'StringTest' }
], ['time']) ], ['time'])
...@@ -188,7 +188,7 @@ describe('testRunner', () => { ...@@ -188,7 +188,7 @@ describe('testRunner', () => {
// Test multiple directory import in test contract // Test multiple directory import in test contract
describe('test multiple directory import in test contract', () => { describe('test multiple directory import in test contract', () => {
const filename: string = 'tests/examples_5/test/simple_storage_test.sol' const filename: string = __dirname + '/examples_5/test/simple_storage_test.sol'
beforeAll(done => { beforeAll(done => {
compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) { compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) {
...@@ -205,7 +205,7 @@ describe('testRunner', () => { ...@@ -205,7 +205,7 @@ describe('testRunner', () => {
it('should return 4 messages', () => { it('should return 4 messages', () => {
deepEqualExcluding(tests, [ deepEqualExcluding(tests, [
{ type: 'accountList', value: accounts }, { type: 'accountList', value: accounts },
{ type: 'contract', value: 'StorageResolveTest', filename: 'tests/examples_5/test/simple_storage_test.sol' }, { type: 'contract', value: 'StorageResolveTest', filename: __dirname + '/examples_5/test/simple_storage_test.sol' },
{ type: 'testPass', value: 'Initial value should be100', context: 'StorageResolveTest' }, { type: 'testPass', value: 'Initial value should be100', context: 'StorageResolveTest' },
{ type: 'testPass', value: 'Check if even', context: 'StorageResolveTest' }, { type: 'testPass', value: 'Check if even', context: 'StorageResolveTest' },
{ type: 'testPass', value: 'Check if odd', context: 'StorageResolveTest' } { type: 'testPass', value: 'Check if odd', context: 'StorageResolveTest' }
...@@ -215,7 +215,7 @@ describe('testRunner', () => { ...@@ -215,7 +215,7 @@ describe('testRunner', () => {
//Test signed/unsigned integer weight //Test signed/unsigned integer weight
describe('test number weight', () => { describe('test number weight', () => {
const filename: string = 'tests/number/number_test.sol' const filename: string = __dirname + '/number/number_test.sol'
beforeAll(done => { beforeAll(done => {
compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) { compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) {
...@@ -235,7 +235,7 @@ describe('testRunner', () => { ...@@ -235,7 +235,7 @@ describe('testRunner', () => {
// Test Transaction with custom sender & value // Test Transaction with custom sender & value
describe('various sender', () => { describe('various sender', () => {
const filename: string = 'tests/various_sender/sender_and_value_test.sol' const filename: string = __dirname + '/various_sender/sender_and_value_test.sol'
beforeAll(done => { beforeAll(done => {
compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) { compileAndDeploy(filename, function (_err: Error | null | undefined, compilationData: object, contracts: any, asts: any, accounts: string[]) {
...@@ -255,7 +255,7 @@ describe('testRunner', () => { ...@@ -255,7 +255,7 @@ describe('testRunner', () => {
// Test `runTest` method without sending contract object (should throw error) // Test `runTest` method without sending contract object (should throw error)
describe('runTest method without contract json interface', () => { describe('runTest method without contract json interface', () => {
const filename: string = 'tests/various_sender/sender_and_value_test.sol' const filename: string = __dirname + '/various_sender/sender_and_value_test.sol'
const errorCallback: Function = (done) => { const errorCallback: Function = (done) => {
return (err, _results) => { return (err, _results) => {
if (err && err.message.includes('Contract interface not available')) { if (err && err.message.includes('Contract interface not available')) {
......
This diff is collapsed.
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
"compilerOptions": { "compilerOptions": {
"types": ["node", "jest"], "types": ["node", "jest"],
"module": "commonjs", "module": "commonjs",
"allowJs": true,
"rootDir": "./",
"esModuleInterop": true "esModuleInterop": true
}, },
"include": ["**/*.ts"] "include": ["**/*.ts"]
......
...@@ -6,7 +6,6 @@ ...@@ -6,7 +6,6 @@
"types": ["jest", "node"] "types": ["jest", "node"]
}, },
"include": [ "include": [
"**/*.sol",
"**/*.spec.ts", "**/*.spec.ts",
"**/*.spec.tsx", "**/*.spec.tsx",
"**/*.spec.js", "**/*.spec.js",
......
...@@ -348,22 +348,10 @@ ...@@ -348,22 +348,10 @@
} }
}, },
"test": { "test": {
"builder": "@nrwl/workspace:run-commands",
"options": {
"commands": [
{
"command": "./../../node_modules/.bin/npm-run-all test"
}
],
"cwd": "libs/remix-tests"
}
},
"test2": {
"builder": "@nrwl/jest:jest", "builder": "@nrwl/jest:jest",
"options": { "options": {
"jestConfig": "libs/remix-tests/jest.config.js", "jestConfig": "libs/remix-tests/jest.config.js",
"tsConfig": "libs/remix-tests/tsconfig.spec.json", "tsConfig": "libs/remix-tests/tsconfig.spec.json"
"passWithNoTests": true
} }
}, },
"build": { "build": {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment