123456import chai from 'chai';7import chaiAsPromised from 'chai-as-promised';8import { default as usingApi } from "./substrate/substrate-api";9import privateKey from "./substrate/privateKey";10import { BigNumber } from 'bignumber.js';11import { IKeyringPair } from '@polkadot/types/types';1213chai.use(chaiAsPromised);14const expect = chai.expect;1516let alice: IKeyringPair;17let bob: IKeyringPair;1819describe('integration test: Inflation', () => {20 before(async () => {21 await usingApi(async (api) => {22 alice = privateKey('//Alice');23 bob = privateKey('//Bob');24 });25 });2627 it('First year inflation is 10%', async () => {28 await usingApi(async (api) => {2930 const blockInterval = parseInt((await api.consts.inflation.inflationBlockInterval).toString());31 const totalIssuanceStart = new BigNumber((await api.query.inflation.startingYearTotalIssuance()).toString());32 const blockInflation = new BigNumber((await api.query.inflation.blockInflation()).toString());3334 const YEAR = 5259600; 35 const totalExpectedInflation = totalIssuanceStart.multipliedBy(0.1);36 const totalActualInflation = blockInflation.multipliedBy(YEAR / blockInterval);3738 const tolerance = 0.00001; 39 expect(totalExpectedInflation.dividedBy(totalActualInflation).minus(1).abs().toNumber()).to.be.lessThan(tolerance);40 });41 });4243});