🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nebtest

NebTest will let you to test your nebulas smart contracts just like you write unit test for any javascript applications.

1.0.2
latest
Version published
Weekly downloads
6
-14.29%
Maintainers
4
Weekly downloads
 
Created

Nebtest

NebTest will let you to test your nebulas smart contracts just like you write unit test for any javascript applications.

Features

  • You can configure for testing in your testnet / mainnet.
  • Run test case with multiple test data at a time using json.
  • Will deploy a smart contract before each test case to run your test case in clean state.

Pre-requisites

Methods

NameParametersReturnDescription
createNewAccount-AccountCreates a new account from wallet
transferTokento, token-Send token to the given address from wallet
deployContractfileName-Deploy the contract file
callContractvalue, calltransactionCall the specified methods with arguments
transactvalue, callreceiptReturns the transaction receipt

Getting Started

  • Install
    npm install --save nebtest
    npm install --save mocha chai

  • Include nebtest to your test case
    const Nebtest = require('nebtest');

  • Export variables

    Download and follow the instructions to create a web-wallet https://github.com/nebulasio/web-wallet

    Create a wallet

    From the wallet info, you will get the wallet details

    export ENVIRONMENT='testnet'
    export SOURCEACCOUNT='wallet private key'
    export COINBASE='wallet address'

  • Mock Contract
    Place your contract files in test directory

        test/contracts/contractFile.js
    
  • Test data
    Place your test data in test directory

        test/testCases.json
    
  • Test data - sample format

    const testData = [
      {
        name: 'Test Case Description',
        data: [
          {
            name: 'Test data name',
            testInput: {
              ...test inputs
            },
            testExpect: {
              ...test result expect
            }
          }
        ]
      }
    
  • Test Cases
    Write your test cases in

        test/test.js
    
  • Run test

    Add following command to scripts. The timeout is based on the mining time of the contract you are running. Increase the timeout if you are getting the timeout error.

    "scripts": {
      ...
      "test": "mocha --timeout 600000"
    }
    

    Run the test as,

      npm run test
    

Example

Check here for a complete example

Resources

Steps for creating nebulas web wallet

To claim free nebulas tokens

FAQs

Package last updated on 31 Jul 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts