30 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import * as chai from 'chai';
 | 
						|
import {web3Factory} from './utils/web3_factory';
 | 
						|
import {ZeroEx} from '../src/';
 | 
						|
import {Web3Wrapper} from '../src/web3_wrapper';
 | 
						|
import {constants} from './utils/constants';
 | 
						|
 | 
						|
chai.config.includeStack = true;
 | 
						|
const expect = chai.expect;
 | 
						|
 | 
						|
describe('Web3Wrapper', () => {
 | 
						|
    const web3Provider = web3Factory.create().currentProvider;
 | 
						|
    describe('#getNetworkIdIfExistsAsync', () => {
 | 
						|
        it('caches network id requests', async () => {
 | 
						|
            const web3Wrapper = (new ZeroEx(web3Provider) as any)._web3Wrapper as Web3Wrapper;
 | 
						|
            expect((web3Wrapper as any).networkIdIfExists).to.be.undefined();
 | 
						|
            const networkIdIfExists = await web3Wrapper.getNetworkIdIfExistsAsync();
 | 
						|
            expect((web3Wrapper as any).networkIdIfExists).to.be.equal(constants.TESTRPC_NETWORK_ID);
 | 
						|
        });
 | 
						|
        it('invalidates network id cache on setProvider call', async () => {
 | 
						|
            const web3Wrapper = (new ZeroEx(web3Provider) as any)._web3Wrapper as Web3Wrapper;
 | 
						|
            expect((web3Wrapper as any).networkIdIfExists).to.be.undefined();
 | 
						|
            const networkIdIfExists = await web3Wrapper.getNetworkIdIfExistsAsync();
 | 
						|
            expect((web3Wrapper as any).networkIdIfExists).to.be.equal(constants.TESTRPC_NETWORK_ID);
 | 
						|
            const newProvider = web3Factory.create().currentProvider;
 | 
						|
            web3Wrapper.setProvider(newProvider);
 | 
						|
            expect((web3Wrapper as any).networkIdIfExists).to.be.undefined();
 | 
						|
        });
 | 
						|
    });
 | 
						|
});
 |