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

difftreelog

source

tests/src/setContractSponsoringRateLimit.test.ts2.4 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 privateKey from './substrate/privateKey';8import usingApi from './substrate/substrate-api';9import waitNewBlocks from './substrate/wait-new-blocks';10import { deployFlipper, toggleFlipValueExpectFailure, toggleFlipValueExpectSuccess } from './util/contracthelpers';11import {12  enableContractSponsoringExpectSuccess,13  findUnusedAddress,14  setContractSponsoringRateLimitExpectFailure,15  setContractSponsoringRateLimitExpectSuccess,16} from './util/helpers';1718describe.skip('Integration Test setContractSponsoringRateLimit', () => {19  it('ensure sponsored contract can\'t be called twice without pause for free', async () => {20    await usingApi(async (api) => {21      const user = await findUnusedAddress(api);2223      const [flipper, deployer] = await deployFlipper(api);24      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);25      await setContractSponsoringRateLimitExpectSuccess(deployer, flipper.address, 10);26      await toggleFlipValueExpectSuccess(user, flipper);27      await toggleFlipValueExpectFailure(user, flipper);28    });29  });3031  it('ensure sponsored contract can be called twice with pause for free', async () => {32    await usingApi(async (api) => {33      const user = await findUnusedAddress(api);3435      const [flipper, deployer] = await deployFlipper(api);36      await enableContractSponsoringExpectSuccess(deployer, flipper.address, true);37      await setContractSponsoringRateLimitExpectSuccess(deployer, flipper.address, 1);38      await toggleFlipValueExpectSuccess(user, flipper);39      await waitNewBlocks(api, 1);40      await toggleFlipValueExpectSuccess(user, flipper);41    });42  });43});4445describe.skip('Negative Integration Test setContractSponsoringRateLimit', () => {46  let alice: IKeyringPair;4748  before(async () => {49    alice = privateKey('//Alice');50  });5152  it('fails when called for non-contract address', async () => {53    await usingApi(async (api) => {54      const user = await findUnusedAddress(api);5556      await setContractSponsoringRateLimitExpectFailure(alice, user.address, 1);57    });58  });5960  it('fails when called by non-owning user', async () => {61    await usingApi(async (api) => {62      const [flipper] = await deployFlipper(api);6364      await setContractSponsoringRateLimitExpectFailure(alice, flipper.address, 1);65    });66  });67});