github.com/igggame/nebulas-go@v2.1.0+incompatible/nebtestkit/cases/rpc/GetDynasty.test.js (about)

     1  'use strict';
     2  
     3  var expect = require('chai').expect;
     4  var rpc_client = require('./rpc_client/rpc_client.js');
     5  var Wallet = require("nebulas");
     6  
     7  var coinbase,
     8      client,
     9      chain_id,
    10      sourceAccount,
    11      server_address;
    12  
    13  var env = process.env.NET || 'local';
    14  env = "maintest";
    15  if (env === 'testneb1') {
    16      chain_id = 1001;
    17      sourceAccount = new Wallet.Account("25a3a441a34658e7a595a0eda222fa43ac51bd223017d17b420674fb6d0a4d52");
    18      coinbase = "n1SAeQRVn33bamxN4ehWUT7JGdxipwn8b17";
    19      server_address = "35.182.48.19:8684";
    20    
    21    } else if (env === "testneb2") {
    22      chain_id = 1002;
    23      sourceAccount = new Wallet.Account("25a3a441a34658e7a595a0eda222fa43ac51bd223017d17b420674fb6d0a4d52");
    24      coinbase = "n1SAeQRVn33bamxN4ehWUT7JGdxipwn8b17";
    25      server_address = "34.205.26.12:8684";
    26    
    27    } else if (env === "testneb3") {
    28      chain_id = 1003;
    29      sourceAccount = new Wallet.Account("25a3a441a34658e7a595a0eda222fa43ac51bd223017d17b420674fb6d0a4d52");
    30      coinbase = "n1SAeQRVn33bamxN4ehWUT7JGdxipwn8b17";
    31      server_address = "35.177.214.138:8684";
    32    
    33    } else if (env === "testneb4") { //super node
    34      chain_id = 1004;
    35      sourceAccount = new Wallet.Account("c75402f6ffe6edcc2c062134b5932151cb39b6486a7beb984792bb9da3f38b9f");
    36      coinbase = "n1EzGmFsVepKduN1U5QFyhLqpzFvM9sRSmG";
    37      server_address = "35.154.108.11:8684";
    38    } else if (env === "testneb4_normalnode"){
    39      chain_id = 1004;
    40      sourceAccount = new Wallet.Account("c75402f6ffe6edcc2c062134b5932151cb39b6486a7beb984792bb9da3f38b9f");
    41      coinbase = "n1EzGmFsVepKduN1U5QFyhLqpzFvM9sRSmG";
    42      server_address = "18.197.107.228:8684";
    43    } else if (env === "local") {
    44      chain_id = 100;
    45      sourceAccount = new Wallet.Account("d80f115bdbba5ef215707a8d7053c16f4e65588fd50b0f83369ad142b99891b5");
    46      coinbase = "n1QZMXSZtW7BUerroSms4axNfyBGyFGkrh5";
    47      server_address = "127.0.0.1:8684";
    48    
    49    } else if (env === "maintest"){
    50      chain_id = 2;
    51      sourceAccount = new Wallet.Account("d2319a8a63b1abcb0cc6d4183198e5d7b264d271f97edf0c76cfdb1f2631848c");
    52      coinbase = "n1dZZnqKGEkb1LHYsZRei1CH6DunTio1j1q";
    53      server_address = "54.149.15.132:8684";
    54    } else {
    55      throw new Error("invalid env (" + env + ").");
    56    }
    57  
    58  function testGetDynasty(testInput, testExpect, done) {
    59  
    60      try {
    61          client.GetDynasty(testInput, (err, resp) => {
    62              try {
    63                  expect(!!err).to.equal(testExpect.hasError);
    64  
    65                  if (err) {
    66                      console.log("call return err: " + JSON.stringify(err));
    67                      expect(err).have.property('details').equal(testExpect.errorMsg);
    68                  } else {
    69                      console.log("call return success: " + JSON.stringify(resp));
    70                      expect(resp).to.have.property('miners');
    71                  }
    72                  done();
    73              } catch (err) {
    74                  done(err);
    75              }
    76          });
    77      } catch(err) {
    78          if (testExpect.hasError) {
    79              try {
    80                  expect(err.toString()).to.have.string(testExpect.errorMsg);
    81                  done()
    82                  return;
    83              } catch(er) {}
    84          } 
    85          done(err)
    86      }
    87  }
    88  
    89  describe("rpc: GetDynasty", () => {
    90      before(() => {
    91          client = rpc_client.new_client(server_address);
    92      });
    93  
    94      it('1. `height` missing', done => {
    95          var testInput = {
    96              
    97          }
    98  
    99          var testExpect = {
   100              hasError: false,
   101              errorMsg: ''
   102          }
   103  
   104          testGetDynasty(testInput, testExpect, done)
   105      });
   106  
   107      it('2. `height` empty string', done => {
   108          var testInput = {
   109              height: ""
   110          }
   111  
   112          var testExpect = {
   113              hasError: true,
   114              errorMsg: 'Error:'
   115          }
   116  
   117          testGetDynasty(testInput, testExpect, done)
   118      });
   119  
   120      it('3. `height` 0', done => {
   121          var testInput = {
   122              height: 0
   123          }
   124  
   125          var testExpect = {
   126              hasError: false,
   127              errorMsg: ''
   128          }
   129  
   130          testGetDynasty(testInput, testExpect, done)
   131      });
   132  
   133      it('4. `height` negative', done => {
   134          var testInput = {
   135              height: -100000
   136          }
   137  
   138          var testExpect = {
   139              hasError: false,
   140              errorMsg: ''
   141          }
   142  
   143          testGetDynasty(testInput, testExpect, done)
   144      });
   145  
   146      it('5. `height` bigger than now', done => {
   147          var testInput = {
   148              height: 10000000000
   149          }
   150  
   151          var testExpect = {
   152              hasError: true,
   153              errorMsg: 'block not found'
   154          }
   155  
   156          testGetDynasty(testInput, testExpect, done)
   157      });
   158  });