/* eslint-disable prefer-const */'use strict'const test = require('tape')const proto = require('../proto/proto')test('Copy structs', function (t) {// Create a new account with some orderslet account1 = new proto.Account(1, 'Test', proto.State.good, new proto.Balance('USD', 1000.0), new proto.Balance('EUR', 100.0))account1.orders.push(new proto.Order(1, 'EURUSD', proto.OrderSide.buy, proto.OrderType.market, 1.23456, 1000.0))account1.orders.push(new proto.Order(2, 'EURUSD', proto.OrderSide.sell, proto.OrderType.limit, 1.0, 100.0))account1.orders.push(new proto.Order(3, 'EURUSD', proto.OrderSide.buy, proto.OrderType.stop, 1.5, 10.0))// Clone the accountlet account2 = account1.clone()// Clear the source account// noinspection JSUnusedAssignmentaccount1 = new proto.Account()t.equal(account2.id, 1)t.equal(account2.name, 'Test')t.true(account2.state.hasFlags(proto.State.good))t.equal(account2.wallet.currency, 'USD')t.equal(account2.wallet.amount, 1000.0)t.notEqual(account2.asset, undefined)t.equal(account2.asset.currency, 'EUR')t.equal(account2.asset.amount, 100.0)t.equal(account2.orders.length, 3)t.equal(account2.orders[0].id, 1)t.equal(account2.orders[0].symbol, 'EURUSD')t.true(account2.orders[0].side.eq(proto.OrderSide.buy))t.true(account2.orders[0].type.eq(proto.OrderType.market))t.equal(account2.orders[0].price, 1.23456)t.equal(account2.orders[0].volume, 1000.0)t.equal(account2.orders[1].id, 2)t.equal(account2.orders[1].symbol, 'EURUSD')t.true(account2.orders[1].side.eq(proto.OrderSide.sell))t.true(account2.orders[1].type.eq(proto.OrderType.limit))t.equal(account2.orders[1].price, 1.0)t.equal(account2.orders[1].volume, 100.0)t.equal(account2.orders[2].id, 3)t.equal(account2.orders[2].symbol, 'EURUSD')t.true(account2.orders[2].side.eq(proto.OrderSide.buy))t.true(account2.orders[2].type.eq(proto.OrderType.stop))t.equal(account2.orders[2].price, 1.5)t.equal(account2.orders[2].volume, 10.0)t.end()})
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。