git.delta.rocks / unique-network / refs/commits / b0e2eecb83a7

difftreelog

source

tests/src/enableContractSponsoring.test.ts1.8 KiBsourcehistory
1import { IKeyringPair } from '@polkadot/types/types';2import chai from 'chai';3import chaiAsPromised from 'chai-as-promised';4import privateKey from './substrate/privateKey';5import usingApi from './substrate/substrate-api';6import { deployFlipper, getFlipValue, toggleFlipValueExpectSuccess } from './util/contracthelpers';7import {8  enableContractSponsoringExpectFailure,9  enableContractSponsoringExpectSuccess,10  findUnusedAddress,11  setContractSponsoringRateLimitExpectSuccess,12} from './util/helpers';1314chai.use(chaiAsPromised);15const expect = chai.expect;1617describe('Integration Test enableContractSponsoring', () => {18  it('ensure tx fee is paid from endowment', async () => {19    await usingApi(async (api) => {20      const user = await findUnusedAddress(api);2122      const [flipper, deployer] = await deployFlipper(api);23      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);24      await setContractSponsoringRateLimitExpectSuccess(deployer, flipper.address, 1);25      await toggleFlipValueExpectSuccess(user, flipper);2627      expect(await getFlipValue(flipper, deployer)).to.be.false;28    });29  });30});3132describe('Negative Integration Test enableContractSponsoring', () => {33  let alice: IKeyringPair;3435  before(async () => {36    alice = privateKey('//Alice');37  });3839  it('fails when called for non-contract address', async () => {40    await usingApi(async (api) => {41      const user = await findUnusedAddress(api);4243      await enableContractSponsoringExpectFailure(alice, user.address, true);44    });45  });4647  it('fails when called by non-owning user', async () => {48    await usingApi(async (api) => {49      const [flipper, _] = await deployFlipper(api);5051      await enableContractSponsoringExpectFailure(alice, flipper.address, true);52    });53  });54});