12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- const { ethers } = require('hardhat');
- const { expect } = require('chai');
- const { loadFixture } = require('@nomicfoundation/hardhat-network-helpers');
- async function fixture() {
- const token = await ethers.deployContract('$ERC6909Metadata');
- return { token };
- }
- describe('ERC6909Metadata', function () {
- beforeEach(async function () {
- Object.assign(this, await loadFixture(fixture));
- });
- describe('name', function () {
- it('is empty string be default', async function () {
- await expect(this.token.name(1n)).to.eventually.equal('');
- });
- it('can be set by dedicated setter', async function () {
- await expect(this.token.$_setName(1n, 'My Token'))
- .to.emit(this.token, 'ERC6909NameUpdated')
- .withArgs(1n, 'My Token');
- await expect(this.token.name(1n)).to.eventually.equal('My Token');
- // Only set for the specified token ID
- await expect(this.token.name(2n)).to.eventually.equal('');
- });
- });
- describe('symbol', function () {
- it('is empty string be default', async function () {
- await expect(this.token.symbol(1n)).to.eventually.equal('');
- });
- it('can be set by dedicated setter', async function () {
- await expect(this.token.$_setSymbol(1n, 'MTK')).to.emit(this.token, 'ERC6909SymbolUpdated').withArgs(1n, 'MTK');
- await expect(this.token.symbol(1n)).to.eventually.equal('MTK');
- // Only set for the specified token ID
- await expect(this.token.symbol(2n)).to.eventually.equal('');
- });
- });
- describe('decimals', function () {
- it('is 0 by default', async function () {
- await expect(this.token.decimals(1n)).to.eventually.equal(0);
- });
- it('can be set by dedicated setter', async function () {
- await expect(this.token.$_setDecimals(1n, 18)).to.emit(this.token, 'ERC6909DecimalsUpdated').withArgs(1n, 18);
- await expect(this.token.decimals(1n)).to.eventually.equal(18);
- // Only set for the specified token ID
- await expect(this.token.decimals(2n)).to.eventually.equal(0);
- });
- });
- });
|