톤 컨트랙트 집행자 (ton-contract-executor)

참고: 이 라이브러리는 이 문서가 작성된 시점 (2022년 8월)에는 macOS만 지원하는 ton-compiler 에 의존합니다. 따라서 macOS 사용자가 아닌 경우, 지원이 추가될 때까지 이 라이브러리를 사용할 수 없습니다.

ton-contract-executor는 TVM을 로컬에서 실행하고 컨트랙트를 실행할 수 있으므로, 컨트랙트를 네트워크에서 론칭하기 전에 작성, 디버깅 및 전체 테스트를 쉽게 만들어 줍니다.

설정하려면 다음을 수행해야 합니다.

  1. Node.js 설치

  2. yarn 패키지 관리자 설치 :

npm install --global yarn

  1. 프로젝트의 root 디렉토리를 만들고 초기화합니다.

yarn init

  1. Ton-contract-executor 및 ton 설치:

yarn add ton-contract-executor

yarn add ton

  1. 아래 내용으로 contract.js 파일 만들기 :

let {SmartContract} = require("ton-contract-executor");

let { Cell } = require("ton");

async function main() {

const source = `

() main() {

;; noop

}

int sum(int a, int b) method_id {

return a + b;

}

`

let contract = await SmartContract.fromFuncSource(source, new Cell())

let res = await contract.invokeGetMethod('sum', [

// argument a

{ type: 'int', value: '1' },

// argument b

{ type: 'int', value: '2' },

])

console.log('1 + 2 = ', res.result[0])

};

main().then(()=>{});

  1. 실행에 성공하면 올바른 결과가 포함된 콘솔 로그가 표시됩니다.

이것은 기본적인 예시 이며, 스마트 컨트랙트 파일에서 코드를 읽고 해당 메서드를 실행 및 테스트하는 스크립트를 개발할 수 있습니다. 더 많은 예제는 여기 저장소 에서 참고 할 수 있습니다 .

Last updated