- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经设置了节点:
nearup run localnet --binary-path ~/code/nearcore/target/release
我正在尝试运行一个开玩笑的测试用例:
beforeAll(async function () {
// NOTE: nearlib and nearConfig are made available by near-cli/test_environment
const near = await nearlib.connect(nearConfig)
})
但是,很明显缺少如何在本地节点上创建测试帐户的步骤。这是错误:
● Test suite failed to run
Can not sign transactions for account test.near, no matching key pair found in Signer.
at node_modules/near-api-js/lib/account.js:83:23
at Object.exponentialBackoff [as default] (node_modules/near-api-js/lib/utils/exponential-backoff.js:7:24)
at Account.signAndSendTransaction (node_modules/near-api-js/lib/account.js:80:24)
at Account.createAndDeployContract (node_modules/near-api-js/lib/account.js:176:9)
at LocalTestEnvironment.setup (node_modules/near-cli/test_environment.js:39:9)
也长得像
near-js-api
硬编码以仅部署一份合约。我需要测试多个契约(Contract)。如何部署多个合约?来自近 js-api
test_environment.js
class LocalTestEnvironment extends NodeEnvironment {
constructor(config) {
super(config);
}
async setup() {
this.global.nearlib = require('near-api-js');
this.global.nearAPI = require('near-api-js');
this.global.window = {};
let config = require('./get-config')();
this.global.testSettings = this.global.nearConfig = config;
const now = Date.now();
// create random number with at least 7 digits
const randomNumber = Math.floor(Math.random() * (9999999 - 1000000) + 1000000);
config = Object.assign(config, {
contractName: 'test-account-' + now + '-' + randomNumber,
accountId: 'test-account-' + now + '-' + randomNumber
});
const keyStore = new nearAPI.keyStores.UnencryptedFileSystemKeyStore(PROJECT_KEY_DIR);
config.deps = Object.assign(config.deps || {}, {
storage: this.createFakeStorage(),
keyStore,
});
const near = await nearAPI.connect(config);
const masterAccount = await near.account(testAccountName);
const randomKey = await nearAPI.KeyPair.fromRandom('ed25519');
const data = [...fs.readFileSync('./out/main.wasm')];
await config.deps.keyStore.setKey(config.networkId, config.contractName, randomKey);
await masterAccount.createAndDeployContract(config.contractName, randomKey.getPublicKey(), data, INITIAL_BALANCE);
await super.setup();
}
Near-js-sdk 本身正在针对神秘的共享测试进行部署
case 'ci':
return {
networkId: 'shared-test',
nodeUrl: 'https://rpc.ci-testnet.near.org',
masterAccount: 'test.near',
};
最佳答案
How can I deploy multiple contracts?
masterAccount.createAndDeployContract
同
test_environment.js
.除了一些常见的 init 之外,没有什么特别的 - 您可以直接创建测试所需的任何帐户/契约(Contract)。
near-js-sdk itself is deploying against mysterious shared-test
However there is obvious step missing how to create test accounts on your local node.
create-near-app
创建项目您可能有相应的
test.near
key 在
neardev/
项目文件夹已经。这就是为什么上述神秘环境通常开箱即用的原因。
test.near
你自己:
NODE_ENV=local near create-account test.near --masterAccount some-existing-account
之后,您可以将 key 复制到本地格式(或仅重新配置
UnencryptedFileSystemKeyStore
以使用
~/.near-credentials
路径):
cp ~/.near-credentials/local/test.near.json project/dir/neardev/local/test.near.json
关于nearprotocol - 如何针对具有多个契约(Contract)的本地网络运行近 js-api 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64109797/
合约函数是可升级的,但状态不是,例如 #[near_bindgen] #[derive(BorshDeserialize, BorshSerialize, PanicOnDefault)] pub s
如何在 NEAR 上构建托管和多重签名合约?例如。与在 Solidity 中构建合约相比;需要什么,有没有例子? 最佳答案 我无法比较它的坚固性。但是在 NEAR 上,多重签名合约可以使用多个 Acc
如果有一系列 Action 需要在 NEAR 的智能合约中执行,并且通过给定合约的回调链接起来——如何为它们分配气体。 例如: pub fn some_method(&mut self, ...) -
我有这样的情况,一组两个合约被部署到两个地址,例如: share.ysn-1_0_0.ysn.testnet market.share.ysn-1_0_0.ysn.testnet 在这种情况下,sha
如果我理解正确,near dev-deploy 会为智能合约创建临时 dev-123-456 帐户,而 near deploy 将使用 testnet 帐户。 什么时候使用 near deploy 到
对于各种用例,显示某个账户余额的历史数据是很有值(value)的。 从 NEAR 协议(protocol)查询此数据的最佳方法是什么? 最佳答案 您将从此网址获取帐户交易历史记录:https://he
我有一个最初通过 near-cli 创建的帐户. 然后我生成了一个账本 key :near generate-key key --useLedgerKey="44'/397'/0'/0'/2'"并将其
是否可以使用 near cli. 获得接近帐户的余额? ? 最佳答案 运行: near state 应该做的伎俩: Account account.near { amount: 'XXXXXX'
以这段代码为例: #[payable] pub fn add_liquidity(&mut self, min_liquidity: u128, max_tokens: u128) -
是否有任何示例可用于从修改链上存储的调用返回值? 从读取中返回值当然不是问题,但有人提到从调用中获取返回值也是可能的。 最佳答案 我不确定你所说的获取返回值是什么意思,但这里有一个例子: export
从用户那里免费收取存储费用的最佳做法是什么?每次他们插入数据时,我都必须收取存储费吗?我可以在不制作函数 [payable] 的情况下收取存储费吗? 最佳答案 What are the best pr
我尝试按照此文档 - https://github.com/near/nearup#building-the-docker-image 使用 docker 设置 NEAR 主网存档节点. docker
NEAR的帐户可以有许多不同的 key 对来访问同一帐户。键也可以更改和旋转。这意味着使用特定用户的公用 key 加密消息的默认方法不起作用。 为特定用户加密消息的最佳方式是什么? 最佳答案 NEAR
所以我为我的合约实现了这个功能 #[payable] fn send_message(mut self, message: &str, receiver: &str) { 当我尝试使用 near-cl
我正在尝试调试以下交易的气体使用情况:https://explorer.near.org/transactions/HLCCBGUQLE1jUPJ7cSeaH9VPt4AAGhBLehB2F6zrx5
任何人都可以帮助我处理涉及值(value)/接近的交易/操作类型。我见过多种操作类型,如转移,绘制等 最佳答案 NEAR 协议(protocol)中只有 7 种原生 Action 类型: 转账(存款从
我有以下带有 impl 的结构: #[near_bindgen] #[derive(Default, Serialize, Deserialize, BorshDeserialize, BorshSe
在交易执行期间,我们计算我们“燃烧”了多少以及“使用了多少”。为什么我们必须分别跟踪这些计数器? 最佳答案 使用的气体包括燃烧的气体,所以 gas_used >= gas_burnt ,总是; 当任何
https://explorer.near.org/blocks/99qdUGNmGMMQQdKGmgA7Lf6PjaXAHgVVy53DLHJZpcbb 区 block - 35866073 有 5
一些从存储设备生成的公钥是 ed25519: 前缀后的 44 个字符(总共 52 个),有些是 43 个字符(总共 51 个)。这是允许的吗? ed25519: 是否需要在使用公钥时包含前缀? 最佳答
我是一名优秀的程序员,十分优秀!