dukDukz

[블록체인] 가나쉬 사용 -1 본문

웹 개발/블록체인

[블록체인] 가나쉬 사용 -1

헤일리_HJ 2021. 10. 13. 14:28
$ truffle init

1. contracts -> 솔리디티 작성하는 공간

2. migrations -> deploy 매서드가 사용되는 공간; 데몬에게 배포하는 행위를 하는 공간

3. test -> TDD 코드를 작성하는 공간

 

1. 솔리디티 파일 생성

$ truffle create contract [파일명]

 

contracts 폴더 안에 [파일명].sol 이 생김

function hello() public view returns(string memory){
    return "hello";
}

 


2. 솔리디티 파일 컴파일 하기

$ truffle compile

 

이후 build/contracts [파일명].json 생성되는것 확인하기

 

abi bin 파일을 truffle 에 맞게끔 json 파일로 바꿔준거임

 


3. 마이그레이션 코드 작성하기

migrations 폴더 안에서 파일 생성

규칙은 [숫자]_[파일명].js

 

const [파일명] = artifacts.require("[파일명]");

module.exports = function (deployer) {
  deployer.deploy([파일명]);
};

마이그레이션 : 배포를 할때 truffle 에 맞게끔 배포를 한다. (deploy)

 

$ truffle migrate

4. 테스트 작업

파일 생성하기

$ truffle create test [파일명]

이후 코드 작성하기

contract("HelloToken",()=>{
  it("hello function call",async()=>{
    let instance = await HelloToken.deployed()   
    let result = await instance.hello()
    console.log(`콘솔로그 === `,result);
    return result
  })
})

 

$ truffle test