|
@@ -0,0 +1,49 @@
|
|
|
+const { BN, singletons } = require('@openzeppelin/test-helpers');
|
|
|
+
|
|
|
+const { expect } = require('chai');
|
|
|
+
|
|
|
+const ERC777PresetFixedSupply = artifacts.require('ERC777PresetFixedSupply');
|
|
|
+
|
|
|
+contract('ERC777PresetFixedSupply', function (accounts) {
|
|
|
+ const [registryFunder, owner, defaultOperatorA, defaultOperatorB, anyone] = accounts;
|
|
|
+
|
|
|
+ const initialSupply = new BN('10000');
|
|
|
+ const name = 'ERC777Preset';
|
|
|
+ const symbol = '777P';
|
|
|
+
|
|
|
+ const defaultOperators = [defaultOperatorA, defaultOperatorB];
|
|
|
+
|
|
|
+ before(async function () {
|
|
|
+ await singletons.ERC1820Registry(registryFunder);
|
|
|
+ });
|
|
|
+
|
|
|
+ beforeEach(async function () {
|
|
|
+ this.token = await ERC777PresetFixedSupply.new(name, symbol, defaultOperators, initialSupply, owner);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('returns the name', async function () {
|
|
|
+ expect(await this.token.name()).to.equal(name);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('returns the symbol', async function () {
|
|
|
+ expect(await this.token.symbol()).to.equal(symbol);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('returns the default operators', async function () {
|
|
|
+ expect(await this.token.defaultOperators()).to.deep.equal(defaultOperators);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('default operators are operators for all accounts', async function () {
|
|
|
+ for (const operator of defaultOperators) {
|
|
|
+ expect(await this.token.isOperatorFor(operator, anyone)).to.equal(true);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ it('returns the total supply equal to initial supply', async function () {
|
|
|
+ expect(await this.token.totalSupply()).to.be.bignumber.equal(initialSupply);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('returns the balance of owner equal to initial supply', async function () {
|
|
|
+ expect(await this.token.balanceOf(owner)).to.be.bignumber.equal(initialSupply);
|
|
|
+ });
|
|
|
+});
|