首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >totalSupply考试不及格

totalSupply考试不及格
EN

Ethereum用户
提问于 2019-07-04 07:57:31
回答 1查看 225关注 0票数 0

我要开始编程了。我想完成我的第一份合同,于是我把totalSupply分配给了1000000。

代码语言:javascript
复制
pragma solidity ^0.5.8;

/**
 * The DappToken
  contract Constructor
  Set the total number of tokens
  Read the total number of tokens
 */

  contract DappToken {

    uint256 public totalSupply; 

    function Supply () public {
    totalSupply = 1000000;  
    }
}

当我运行测试时,它不会通过。它说实际的totalSupply设置为零。以下是代码:

代码语言:javascript
复制
var DappToken = artifacts.require ("DappToken");

contract("DappToken", function(accounts) {
    var tokenInstance;

    it("sets the total supply upon deployment", function() {
        return DappToken.deployed().then(function(instance) {
            tokenInstance = instance; 
            return tokenInstance.totalSupply();
        })  .then(function(totalSupply) {
                assert.equal(totalSupply.toNumber(), 1000000, "sets the total supply to 1000000")
        });
    });
})

运行松露迁移时的结果是

代码语言:javascript
复制
Contract:DappToken
1) sets the total supply upon deployment 
> No events were emitted

而且没有通过预期的1000000实际0

EN

回答 1

Ethereum用户

发布于 2019-07-05 01:00:26

目前,您的代码只有一个公共状态变量totalSupply。若要设置值,需要执行Supply函数(根据收到的注释)。

建议阅读关于令牌的OpenZeppelin指南,https://docs.openzeppelin.org/v2.3.0/tokens

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/72561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档