1
0
mirror of https://github.com/oceanprotocol/ocean.js.git synced 2024-11-26 20:39:05 +01:00

rename ERC20Deployer to DatatokenDeployer

This commit is contained in:
Miquel A. Cabot 2022-06-10 10:50:48 +02:00
parent 01859a52f8
commit eedb1b4232
4 changed files with 68 additions and 64 deletions

View File

@ -192,7 +192,7 @@ export class Datatoken extends SmartContract {
const withMint = fixedRateParams.withMint ? 1 : 0 const withMint = fixedRateParams.withMint ? 1 : 0
// should check ERC20Deployer role using NFT level .. // should check DatatokenDeployer role using NFT level ..
const estGas = await estimateGas( const estGas = await estimateGas(
address, address,
@ -296,7 +296,7 @@ export class Datatoken extends SmartContract {
if (!dispenserParams.withMint) dispenserParams.withMint = false if (!dispenserParams.withMint) dispenserParams.withMint = false
// should check ERC20Deployer role using NFT level .. // should check DatatokenDeployer role using NFT level ..
const estGas = await estimateGas( const estGas = await estimateGas(
address, address,
@ -389,7 +389,7 @@ export class Datatoken extends SmartContract {
/** /**
* Add Minter for an ERC20 datatoken * Add Minter for an ERC20 datatoken
* only ERC20Deployer can succeed * only DatatokenDeployer can succeed
* @param {String} dtAddress Datatoken address * @param {String} dtAddress Datatoken address
* @param {String} address User address * @param {String} address User address
* @param {String} minter User which is going to be a Minter * @param {String} minter User which is going to be a Minter
@ -403,7 +403,7 @@ export class Datatoken extends SmartContract {
const dtContract = this.getContract(dtAddress) const dtContract = this.getContract(dtAddress)
if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) { if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) {
throw new Error(`Caller is not ERC20Deployer`) throw new Error(`Caller is not DatatokenDeployer`)
} }
// Estimate gas cost for addMinter method // Estimate gas cost for addMinter method
const estGas = await estimateGas(address, dtContract.methods.addMinter, minter) const estGas = await estimateGas(address, dtContract.methods.addMinter, minter)
@ -434,14 +434,14 @@ export class Datatoken extends SmartContract {
): Promise<any> { ): Promise<any> {
const dtContract = contractInstance || this.getContract(dtAddress) const dtContract = contractInstance || this.getContract(dtAddress)
// should check ERC20Deployer role using NFT level .. // should check DatatokenDeployer role using NFT level ..
return estimateGas(address, dtContract.methods.removeMinter, minter) return estimateGas(address, dtContract.methods.removeMinter, minter)
} }
/** /**
* Revoke Minter permission for an ERC20 datatoken * Revoke Minter permission for an ERC20 datatoken
* only ERC20Deployer can succeed * only DatatokenDeployer can succeed
* @param {String} dtAddress Datatoken address * @param {String} dtAddress Datatoken address
* @param {String} address User address * @param {String} address User address
* @param {String} minter User which will be removed from Minter permission * @param {String} minter User which will be removed from Minter permission
@ -456,7 +456,7 @@ export class Datatoken extends SmartContract {
const dtContract = this.getContract(dtAddress) const dtContract = this.getContract(dtAddress)
if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) { if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) {
throw new Error(`Caller is not ERC20Deployer`) throw new Error(`Caller is not DatatokenDeployer`)
} }
const estGas = await estimateGas(address, dtContract.methods.removeMinter, minter) const estGas = await estimateGas(address, dtContract.methods.removeMinter, minter)
@ -492,7 +492,7 @@ export class Datatoken extends SmartContract {
/** /**
* Add addPaymentManager (can set who's going to collect fee when consuming orders) * Add addPaymentManager (can set who's going to collect fee when consuming orders)
* only ERC20Deployer can succeed * only DatatokenDeployer can succeed
* @param {String} dtAddress Datatoken address * @param {String} dtAddress Datatoken address
* @param {String} address User address * @param {String} address User address
* @param {String} paymentManager User which is going to be a Minter * @param {String} paymentManager User which is going to be a Minter
@ -506,7 +506,7 @@ export class Datatoken extends SmartContract {
const dtContract = this.getContract(dtAddress) const dtContract = this.getContract(dtAddress)
if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) { if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) {
throw new Error(`Caller is not ERC20Deployer`) throw new Error(`Caller is not DatatokenDeployer`)
} }
const estGas = await estimateGas( const estGas = await estimateGas(
@ -546,7 +546,7 @@ export class Datatoken extends SmartContract {
/** /**
* Revoke paymentManager permission for an ERC20 datatoken * Revoke paymentManager permission for an ERC20 datatoken
* only ERC20Deployer can succeed * only DatatokenDeployer can succeed
* @param {String} dtAddress Datatoken address * @param {String} dtAddress Datatoken address
* @param {String} address User address * @param {String} address User address
* @param {String} paymentManager User which will be removed from paymentManager permission * @param {String} paymentManager User which will be removed from paymentManager permission
@ -560,7 +560,7 @@ export class Datatoken extends SmartContract {
const dtContract = this.getContract(dtAddress) const dtContract = this.getContract(dtAddress)
if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) { if ((await this.isDatatokenDeployer(dtAddress, address)) !== true) {
throw new Error(`Caller is not ERC20Deployer`) throw new Error(`Caller is not DatatokenDeployer`)
} }
const estGas = await estimateGas( const estGas = await estimateGas(
@ -1012,7 +1012,7 @@ export class Datatoken extends SmartContract {
/** setData /** setData
* This function allows to store data with a preset key (keccak256(ERC20Address)) into NFT 725 Store * This function allows to store data with a preset key (keccak256(ERC20Address)) into NFT 725 Store
* only ERC20Deployer can succeed * only DatatokenDeployer can succeed
* @param {String} dtAddress Datatoken address * @param {String} dtAddress Datatoken address
* @param {String} address User address * @param {String} address User address
* @param {String} value Data to be stored into 725Y standard * @param {String} value Data to be stored into 725Y standard

View File

@ -54,7 +54,7 @@ export class Nft extends SmartContract {
} }
/** /**
* Create new ERC20 datatoken - only user with ERC20Deployer permission can succeed * Create new ERC20 datatoken - only user with DatatokenDeployer permission can succeed
* @param {String} nftAddress NFT address * @param {String} nftAddress NFT address
* @param {String} address User address * @param {String} address User address
* @param {String} minter User set as initial minter for the ERC20 * @param {String} minter User set as initial minter for the ERC20
@ -82,7 +82,7 @@ export class Nft extends SmartContract {
templateIndex?: number templateIndex?: number
): Promise<string> { ): Promise<string> {
if ((await this.getNftPermissions(nftAddress, address)).deployERC20 !== true) { if ((await this.getNftPermissions(nftAddress, address)).deployERC20 !== true) {
throw new Error(`Caller is not ERC20Deployer`) throw new Error(`Caller is not DatatokenDeployer`)
} }
if (!templateIndex) templateIndex = 1 if (!templateIndex) templateIndex = 1
@ -221,31 +221,35 @@ export class Nft extends SmartContract {
* Estimate gas cost for addToCreateERC20List method * Estimate gas cost for addToCreateERC20List method
* @param {String} nftAddress NFT contract address * @param {String} nftAddress NFT contract address
* @param {String} address NFT Manager adress * @param {String} address NFT Manager adress
* @param {String} erc20Deployer User adress which is going to have erc20Deployer permission * @param {String} datatokenDeployer User adress which is going to have DatatokenDeployer permission
* @param {Contract} nftContract optional contract instance * @param {Contract} nftContract optional contract instance
* @return {Promise<any>} * @return {Promise<any>}
*/ */
public async estGasGasAddDatatokenDeployer( public async estGasGasAddDatatokenDeployer(
nftAddress: string, nftAddress: string,
address: string, address: string,
erc20Deployer: string, datatokenDeployer: string,
contractInstance?: Contract contractInstance?: Contract
): Promise<any> { ): Promise<any> {
const nftContract = contractInstance || this.getContract(nftAddress) const nftContract = contractInstance || this.getContract(nftAddress)
return estimateGas(address, nftContract.methods.addToCreateERC20List, erc20Deployer) return estimateGas(
address,
nftContract.methods.addToCreateERC20List,
datatokenDeployer
)
} }
/** /**
* Add ERC20Deployer permission - only Manager can succeed * Add DatatokenDeployer permission - only Manager can succeed
* @param {String} nftAddress NFT contract address * @param {String} nftAddress NFT contract address
* @param {String} address NFT Manager adress * @param {String} address NFT Manager adress
* @param {String} erc20Deployer User adress which is going to have erc20Deployer permission * @param {String} datatokenDeployer User adress which is going to have DatatokenDeployer permission
* @return {Promise<TransactionReceipt>} trxReceipt * @return {Promise<TransactionReceipt>} trxReceipt
*/ */
public async addDatatokenDeployer( public async addDatatokenDeployer(
nftAddress: string, nftAddress: string,
address: string, address: string,
erc20Deployer: string datatokenDeployer: string
): Promise<TransactionReceipt> { ): Promise<TransactionReceipt> {
const nftContract = this.getContract(nftAddress) const nftContract = this.getContract(nftAddress)
@ -257,12 +261,12 @@ export class Nft extends SmartContract {
const estGas = await estimateGas( const estGas = await estimateGas(
address, address,
nftContract.methods.addToCreateERC20List, nftContract.methods.addToCreateERC20List,
erc20Deployer datatokenDeployer
) )
// Invoke addToCreateERC20List function of the contract // Invoke addToCreateERC20List function of the contract
const trxReceipt = await nftContract.methods const trxReceipt = await nftContract.methods
.addToCreateERC20List(erc20Deployer) .addToCreateERC20List(datatokenDeployer)
.send({ .send({
from: address, from: address,
gas: estGas + 1, gas: estGas + 1,
@ -276,14 +280,14 @@ export class Nft extends SmartContract {
* Estimate gas cost for removeFromCreateERC20List method * Estimate gas cost for removeFromCreateERC20List method
* @param {String} nftAddress NFT contract address * @param {String} nftAddress NFT contract address
* @param {String} address NFT Manager adress * @param {String} address NFT Manager adress
* @param {String} erc20Deployer Address of the user to be revoked ERC20Deployer Permission * @param {String} datatokenDeployer Address of the user to be revoked DatatokenDeployer Permission
* @param {Contract} nftContract optional contract instance * @param {Contract} nftContract optional contract instance
* @return {Promise<any>} * @return {Promise<any>}
*/ */
public async estGasGasRemoveDatatokenDeployer( public async estGasGasRemoveDatatokenDeployer(
nftAddress: string, nftAddress: string,
address: string, address: string,
erc20Deployer: string, datatokenDeployer: string,
contractInstance?: Contract contractInstance?: Contract
): Promise<any> { ): Promise<any> {
const nftContract = contractInstance || this.getContract(nftAddress) const nftContract = contractInstance || this.getContract(nftAddress)
@ -291,40 +295,40 @@ export class Nft extends SmartContract {
return estimateGas( return estimateGas(
address, address,
nftContract.methods.removeFromCreateERC20List, nftContract.methods.removeFromCreateERC20List,
erc20Deployer datatokenDeployer
) )
} }
/** /**
* Remove ERC20Deployer permission - only Manager can succeed * Remove DatatokenDeployer permission - only Manager can succeed
* @param {String} nftAddress NFT contract address * @param {String} nftAddress NFT contract address
* @param {String} address NFT Manager adress * @param {String} address NFT Manager adress
* @param {String} erc20Deployer Address of the user to be revoked ERC20Deployer Permission * @param {String} datatokenDeployer Address of the user to be revoked DatatokenDeployer Permission
* @return {Promise<TransactionReceipt>} trxReceipt * @return {Promise<TransactionReceipt>} trxReceipt
*/ */
public async removeDatatokenDeployer( public async removeDatatokenDeployer(
nftAddress: string, nftAddress: string,
address: string, address: string,
erc20Deployer: string datatokenDeployer: string
): Promise<TransactionReceipt> { ): Promise<TransactionReceipt> {
const nftContract = this.getContract(nftAddress) const nftContract = this.getContract(nftAddress)
if ( if (
(await this.getNftPermissions(nftAddress, address)).manager !== true || (await this.getNftPermissions(nftAddress, address)).manager !== true ||
(address === erc20Deployer && (address === datatokenDeployer &&
(await this.getNftPermissions(nftAddress, address)).deployERC20 !== true) (await this.getNftPermissions(nftAddress, address)).deployERC20 !== true)
) { ) {
throw new Error(`Caller is not Manager nor ERC20Deployer`) throw new Error(`Caller is not Manager nor DatatokenDeployer`)
} }
const estGas = await estimateGas( const estGas = await estimateGas(
address, address,
nftContract.methods.removeFromCreateERC20List, nftContract.methods.removeFromCreateERC20List,
erc20Deployer datatokenDeployer
) )
// Call removeFromCreateERC20List function of the contract // Call removeFromCreateERC20List function of the contract
const trxReceipt = await nftContract.methods const trxReceipt = await nftContract.methods
.removeFromCreateERC20List(erc20Deployer) .removeFromCreateERC20List(datatokenDeployer)
.send({ .send({
from: address, from: address,
gas: estGas + 1, gas: estGas + 1,
@ -581,7 +585,7 @@ export class Nft extends SmartContract {
} }
/** /**
* This function allows to remove all ROLES at NFT level: Managers, ERC20Deployer, MetadataUpdater, StoreUpdater * This function allows to remove all ROLES at NFT level: Managers, DatatokenDeployer, MetadataUpdater, StoreUpdater
* Even NFT Owner has to readd himself as Manager * Even NFT Owner has to readd himself as Manager
* Permissions at erc20 level stay. * Permissions at erc20 level stay.
* Only NFT Owner can call it. * Only NFT Owner can call it.
@ -1030,7 +1034,7 @@ export class Nft extends SmartContract {
return await nftContract.methods.getMetaData().call() return await nftContract.methods.getMetaData().call()
} }
/** Get users ERC20Deployer role /** Get users DatatokenDeployer role
* @param {String} nftAddress NFT contract address * @param {String} nftAddress NFT contract address
* @param {String} address user adress * @param {String} address user adress
* @return {Promise<boolean>} * @return {Promise<boolean>}

View File

@ -18,7 +18,7 @@ describe('Datatoken', () => {
let user1: string let user1: string
let user2: string let user2: string
let user3: string let user3: string
let erc20DeployerUser: string let datatokenDeployer: string
let contracts: Addresses let contracts: Addresses
let nftDatatoken: Nft let nftDatatoken: Nft
let datatoken: Datatoken let datatoken: Datatoken
@ -44,7 +44,7 @@ describe('Datatoken', () => {
user1 = accounts[1] user1 = accounts[1]
user2 = accounts[2] user2 = accounts[2]
user3 = accounts[3] user3 = accounts[3]
erc20DeployerUser = accounts[4] datatokenDeployer = accounts[4]
nftData.owner = nftOwner nftData.owner = nftOwner
}) })
@ -72,7 +72,7 @@ describe('Datatoken', () => {
}) })
it('#createDatatoken - should create a new ERC20 DT from NFT contract', async () => { it('#createDatatoken - should create a new ERC20 DT from NFT contract', async () => {
await nftDatatoken.addDatatokenDeployer(nftAddress, nftOwner, erc20DeployerUser) await nftDatatoken.addDatatokenDeployer(nftAddress, nftOwner, datatokenDeployer)
datatokenAddress = await nftDatatoken.createDatatoken( datatokenAddress = await nftDatatoken.createDatatoken(
nftAddress, nftAddress,
nftOwner, nftOwner,
@ -102,7 +102,7 @@ describe('Datatoken', () => {
} }
}) })
it('#addMinter - should add user1 as minter, if user has ERC20Deployer permission', async () => { it('#addMinter - should add user1 as minter, if user has DatatokenDeployer permission', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true)
assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === false) assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === false)
@ -111,7 +111,7 @@ describe('Datatoken', () => {
assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true) assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true)
}) })
it('#addMinter - should FAIL TO add user1 as minter, if user has ERC20Deployer permission', async () => { it('#addMinter - should FAIL TO add user1 as minter, if user has DatatokenDeployer permission', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user3)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user3)) === false)
assert((await datatoken.getDTPermissions(datatokenAddress, user2)).minter === false) assert((await datatoken.getDTPermissions(datatokenAddress, user2)).minter === false)
@ -119,7 +119,7 @@ describe('Datatoken', () => {
await datatoken.addMinter(datatokenAddress, user3, user2) await datatoken.addMinter(datatokenAddress, user3, user2)
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not ERC20Deployer') assert(e.message === 'Caller is not DatatokenDeployer')
} }
assert((await datatoken.getDTPermissions(datatokenAddress, user2)).minter === false) assert((await datatoken.getDTPermissions(datatokenAddress, user2)).minter === false)
@ -139,7 +139,7 @@ describe('Datatoken', () => {
exchangeId = fre.events.NewFixedRate.returnValues[0] exchangeId = fre.events.NewFixedRate.returnValues[0]
}) })
it('#createFixedRate - should FAIL create FRE if NOT ERC20Deployer', async () => { it('#createFixedRate - should FAIL create FRE if NOT DatatokenDeployer', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user3)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user3)) === false)
try { try {
await datatoken.createFixedRate(datatokenAddress, user3, freParams) await datatoken.createFixedRate(datatokenAddress, user3, freParams)
@ -183,7 +183,7 @@ describe('Datatoken', () => {
} }
}) })
it('#removeMinter - should FAIL to remove user1 as minter, if caller is NOT ERC20Deployer', async () => { it('#removeMinter - should FAIL to remove user1 as minter, if caller is NOT DatatokenDeployer', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user2)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user2)) === false)
assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true) assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true)
@ -191,12 +191,12 @@ describe('Datatoken', () => {
await datatoken.removeMinter(datatokenAddress, user2, user1) await datatoken.removeMinter(datatokenAddress, user2, user1)
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not ERC20Deployer') assert(e.message === 'Caller is not DatatokenDeployer')
} }
assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true) assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true)
}) })
it('#removeMinter - should remove user1 as minter, if nftDatatoken has ERC20Deployer permission', async () => { it('#removeMinter - should remove user1 as minter, if nftDatatoken has DatatokenDeployer permission', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true)
assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true) assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === true)
@ -205,7 +205,7 @@ describe('Datatoken', () => {
assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === false) assert((await datatoken.getDTPermissions(datatokenAddress, user1)).minter === false)
}) })
it('#addPaymentManager - should FAIL TO add user2 as paymentManager, if caller is NOT ERC20Deployer', async () => { it('#addPaymentManager - should FAIL TO add user2 as paymentManager, if caller is NOT DatatokenDeployer', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false)
assert( assert(
(await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === false (await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === false
@ -215,14 +215,14 @@ describe('Datatoken', () => {
await datatoken.addPaymentManager(datatokenAddress, user1, user2) await datatoken.addPaymentManager(datatokenAddress, user1, user2)
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not ERC20Deployer') assert(e.message === 'Caller is not DatatokenDeployer')
} }
assert( assert(
(await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === false (await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === false
) )
}) })
it('#addPaymentManager - should add user2 as paymentManager, if caller has ERC20Deployer permission', async () => { it('#addPaymentManager - should add user2 as paymentManager, if caller has DatatokenDeployer permission', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true)
assert( assert(
(await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === false (await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === false
@ -235,7 +235,7 @@ describe('Datatoken', () => {
) )
}) })
it('#removePaymentManager - should FAIL TO remove user2 as paymentManager, if nftDatatoken has ERC20Deployer permission', async () => { it('#removePaymentManager - should FAIL TO remove user2 as paymentManager, if nftDatatoken has DatatokenDeployer permission', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false)
assert( assert(
(await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === true (await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === true
@ -244,7 +244,7 @@ describe('Datatoken', () => {
await datatoken.removePaymentManager(datatokenAddress, user1, user2) await datatoken.removePaymentManager(datatokenAddress, user1, user2)
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not ERC20Deployer') assert(e.message === 'Caller is not DatatokenDeployer')
} }
assert( assert(
@ -252,7 +252,7 @@ describe('Datatoken', () => {
) )
}) })
it('#removePaymentManager - should remove user2 as paymentManager, if Caller has ERC20Deployer permission', async () => { it('#removePaymentManager - should remove user2 as paymentManager, if Caller has DatatokenDeployer permission', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true)
assert( assert(
(await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === true (await datatoken.getDTPermissions(datatokenAddress, user2)).paymentManager === true
@ -302,11 +302,11 @@ describe('Datatoken', () => {
it('#setPaymentCollector - should set a new paymentCollector, if ERC 20 DEPLOYER', async () => { it('#setPaymentCollector - should set a new paymentCollector, if ERC 20 DEPLOYER', async () => {
assert( assert(
(await nftDatatoken.getNftPermissions(nftAddress, erc20DeployerUser)) (await nftDatatoken.getNftPermissions(nftAddress, datatokenDeployer))
.deployERC20 === true .deployERC20 === true
) )
await datatoken.setPaymentCollector(datatokenAddress, erc20DeployerUser, user3) await datatoken.setPaymentCollector(datatokenAddress, datatokenDeployer, user3)
assert((await datatoken.getPaymentCollector(datatokenAddress)) === user3) assert((await datatoken.getPaymentCollector(datatokenAddress)) === user3)
}) })
@ -546,7 +546,7 @@ describe('Datatoken', () => {
assert(address, 'Not able to get the parent NFT address') assert(address, 'Not able to get the parent NFT address')
}) })
it('#setData - should set a value into 725Y standard, if Caller has ERC20Deployer permission', async () => { it('#setData - should set a value into 725Y standard, if Caller has DatatokenDeployer permission', async () => {
const data = web3.utils.asciiToHex('SomeData') const data = web3.utils.asciiToHex('SomeData')
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, nftOwner)) === true)
@ -557,7 +557,7 @@ describe('Datatoken', () => {
assert((await nftDatatoken.getData(nftAddress, key)) === data) assert((await nftDatatoken.getData(nftAddress, key)) === data)
}) })
it('#setData - should FAIL to set a value into 725Y standard, if Caller has NOT ERC20Deployer permission', async () => { it('#setData - should FAIL to set a value into 725Y standard, if Caller has NOT DatatokenDeployer permission', async () => {
const data = web3.utils.asciiToHex('NewData') const data = web3.utils.asciiToHex('NewData')
const OldData = web3.utils.asciiToHex('SomeData') const OldData = web3.utils.asciiToHex('SomeData')
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false)

View File

@ -67,7 +67,7 @@ describe('NFT', () => {
assert(erc20Address !== null) assert(erc20Address !== null)
}) })
it('#createDatatoken - should fail to create a new ERC20 DT if not ERC20Deployer', async () => { it('#createDatatoken - should fail to create a new ERC20 DT if not DatatokenDeployer', async () => {
try { try {
await nftDatatoken.createDatatoken( await nftDatatoken.createDatatoken(
nftAddress, nftAddress,
@ -84,7 +84,7 @@ describe('NFT', () => {
) )
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not ERC20Deployer') assert(e.message === 'Caller is not DatatokenDeployer')
} }
}) })
@ -123,8 +123,8 @@ describe('NFT', () => {
} }
}) })
// ERC20Deployer // DatatokenDeployer
it('#addDatatokenDeployer -should add ERC20deployer if Manager', async () => { it('#addDatatokenDeployer -should add DatatokenDeployer if Manager', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false)
await nftDatatoken.addDatatokenDeployer(nftAddress, nftOwner, user1) await nftDatatoken.addDatatokenDeployer(nftAddress, nftOwner, user1)
@ -132,7 +132,7 @@ describe('NFT', () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true)
}) })
it('#addDatatokenDeployer - should fail to add ERC20deployer if NOT Manager', async () => { it('#addDatatokenDeployer - should fail to add DatatokenDeployer if NOT Manager', async () => {
try { try {
await nftDatatoken.addDatatokenDeployer(nftAddress, user1, user1) await nftDatatoken.addDatatokenDeployer(nftAddress, user1, user1)
assert(false) assert(false)
@ -141,7 +141,7 @@ describe('NFT', () => {
} }
}) })
it('#removeDatatokenDeployer - remove ERC20deployer if Manager', async () => { it('#removeDatatokenDeployer - remove DatatokenDeployer if Manager', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true)
await nftDatatoken.removeDatatokenDeployer(nftAddress, nftOwner, user1) await nftDatatoken.removeDatatokenDeployer(nftAddress, nftOwner, user1)
@ -149,25 +149,25 @@ describe('NFT', () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === false)
}) })
it('#removeDatatokenDeployer - should fail and remove ERC20deployer if NOT Manager nor himself an ERC20Deployer', async () => { it('#removeDatatokenDeployer - should fail and remove DatatokenDeployer if NOT Manager nor himself an DatatokenDeployer', async () => {
await nftDatatoken.addDatatokenDeployer(nftAddress, nftOwner, user1) await nftDatatoken.addDatatokenDeployer(nftAddress, nftOwner, user1)
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true)
try { try {
await nftDatatoken.removeDatatokenDeployer(nftAddress, user1, user1) await nftDatatoken.removeDatatokenDeployer(nftAddress, user1, user1)
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not Manager nor ERC20Deployer') assert(e.message === 'Caller is not Manager nor DatatokenDeployer')
} }
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true)
}) })
it('#removeDatatokenDeployer - should fail to remove himself as an ERC20Deployer', async () => { it('#removeDatatokenDeployer - should fail to remove himself as an DatatokenDeployer', async () => {
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true)
try { try {
await nftDatatoken.removeDatatokenDeployer(nftAddress, user1, user1) await nftDatatoken.removeDatatokenDeployer(nftAddress, user1, user1)
assert(false) assert(false)
} catch (e) { } catch (e) {
assert(e.message === 'Caller is not Manager nor ERC20Deployer') assert(e.message === 'Caller is not Manager nor DatatokenDeployer')
} }
assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true) assert((await nftDatatoken.isDatatokenDeployer(nftAddress, user1)) === true)
}) })