톤 컨트랙트 집행자 (ton-contract-executor)
참고: 이 라이브러리는 이 문서가 작성된 시점 (2022년 8월)에는 macOS만 지원하는 ton-compiler 에 의존합니다. 따라서 macOS 사용자가 아닌 경우, 지원이 추가될 때까지 이 라이브러리를 사용할 수 없습니다.
ton-contract-executor는 TVM을 로컬에서 실행하고 컨트랙트를 실행할 수 있으므로, 컨트랙트를 네트워크에서 론칭하기 전에 작성, 디버깅 및 전체 테스트를 쉽게 만들어 줍니다.
설정하려면 다음을 수행해야 합니다.
Node.js 설치
yarn 패키지 관리자 설치 :
npm install --global yarn
프로젝트의 root 디렉토리를 만들고 초기화합니다.
yarn init
Ton-contract-executor 및 ton 설치:
yarn add ton-contract-executor
yarn add ton
아래 내용으로 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(()=>{});
실행에 성공하면 올바른 결과가 포함된 콘솔 로그가 표시됩니다.
이것은 기본적인 예시 이며, 스마트 컨트랙트 파일에서 코드를 읽고 해당 메서드를 실행 및 테스트하는 스크립트를 개발할 수 있습니다. 더 많은 예제는 여기 저장소 에서 참고 할 수 있습니다 .
Last updated