git.delta.rocks / unique-network / refs/commits / 536471f73bb3

difftreelog

source

tests/src/enableContractSponsoring.test.ts3.0 KiBsourcehistory
1//2// This file is subject to the terms and conditions defined in3// file 'LICENSE', which is part of this source code package.4//56import { IKeyringPair } from '@polkadot/types/types';7import chai from 'chai';8import chaiAsPromised from 'chai-as-promised';9import privateKey from './substrate/privateKey';10import usingApi from './substrate/substrate-api';11import { deployFlipper, getFlipValue, toggleFlipValueExpectSuccess } from './util/contracthelpers';12import {13  enableContractSponsoringExpectFailure,14  enableContractSponsoringExpectSuccess,15  findUnusedAddress,16  setContractSponsoringRateLimitExpectSuccess,17} from './util/helpers';1819chai.use(chaiAsPromised);20const expect = chai.expect;2122describe.skip('Integration Test enableContractSponsoring', () => {23  it('ensure tx fee is paid from endowment', async () => {24    await usingApi(async (api) => {25      const user = await findUnusedAddress(api);2627      const [flipper, deployer] = await deployFlipper(api);28      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);29      await setContractSponsoringRateLimitExpectSuccess(deployer, flipper.address, 1);30      await toggleFlipValueExpectSuccess(user, flipper);3132      expect(await getFlipValue(flipper, deployer)).to.be.false;33    });34  });3536  it('ensure it can be enabled twice', async () => {37    await usingApi(async (api) => {38      const [flipper, deployer] = await deployFlipper(api);3940      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);41      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);42    });43  });4445  it('ensure it can be disabled twice', async () => {46    await usingApi(async (api) => {47      const [flipper, deployer] = await deployFlipper(api);4849      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);50      await enableContractSponsoringExpectSuccess(deployer, flipper.address, false);51      await enableContractSponsoringExpectSuccess(deployer, flipper.address, false);52    });53  });5455  it('ensure it can be re-enabled', async () => {56    await usingApi(async (api) => {57      const [flipper, deployer] = await deployFlipper(api);5859      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);60      await enableContractSponsoringExpectSuccess(deployer, flipper.address, false);61      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);62    });63  });6465});6667describe.skip('Negative Integration Test enableContractSponsoring', () => {68  let alice: IKeyringPair;6970  before(async () => {71    alice = privateKey('//Alice');72  });7374  it('fails when called for non-contract address', async () => {75    await usingApi(async (api) => {76      const user = await findUnusedAddress(api);7778      await enableContractSponsoringExpectFailure(alice, user.address, true);79    });80  });8182  it('fails when called by non-owning user', async () => {83    await usingApi(async (api) => {84      const [flipper] = await deployFlipper(api);8586      await enableContractSponsoringExpectFailure(alice, flipper.address, true);87    });88  });89});