mirror of
https://github.com/bigchaindb/js-bigchaindb-driver.git
synced 2024-11-24 11:01:28 +01:00
fix: update test constants
Signed-off-by: getlarge <ed@getlarge.eu>
This commit is contained in:
parent
43c541d6d7
commit
978585d649
@ -2,8 +2,8 @@
|
|||||||
// SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
|
// SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
|
||||||
// Code is Apache-2.0 and docs are CC-BY-4.0
|
// Code is Apache-2.0 and docs are CC-BY-4.0
|
||||||
|
|
||||||
import test from 'ava'
|
|
||||||
import base58 from 'bs58'
|
import base58 from 'bs58'
|
||||||
|
import { createHash } from 'crypto'
|
||||||
import { Ed25519Sha256 } from 'crypto-conditions'
|
import { Ed25519Sha256 } from 'crypto-conditions'
|
||||||
import { Transaction, Ed25519Keypair } from '../src'
|
import { Transaction, Ed25519Keypair } from '../src'
|
||||||
// TODO: Find out if ava has something like conftest, if so put this there.
|
// TODO: Find out if ava has something like conftest, if so put this there.
|
||||||
@ -34,20 +34,19 @@ export const bobCondition = Transaction.makeEd25519Condition(bob.publicKey)
|
|||||||
export const bobOutput = Transaction.makeOutput(bobCondition)
|
export const bobOutput = Transaction.makeOutput(bobCondition)
|
||||||
|
|
||||||
export function delegatedSignTransaction(...keyPairs) {
|
export function delegatedSignTransaction(...keyPairs) {
|
||||||
return function sign(input, transactionHash) {
|
return function sign(serializedTransaction, input, index) {
|
||||||
|
const transactionUniqueFulfillment = input.fulfills ? serializedTransaction
|
||||||
|
.concat(input.fulfills.transaction_id)
|
||||||
|
.concat(input.fulfills.output_index) : serializedTransaction
|
||||||
|
const transactionHash = createHash('sha3-256').update(transactionUniqueFulfillment).digest()
|
||||||
const filteredKeyPairs = keyPairs.filter(({ publicKey }) =>
|
const filteredKeyPairs = keyPairs.filter(({ publicKey }) =>
|
||||||
input.owners_before.includes(publicKey))
|
input.owners_before.includes(publicKey))
|
||||||
|
|
||||||
const ed25519Fulfillment = new Ed25519Sha256()
|
const ed25519Fulfillment = new Ed25519Sha256()
|
||||||
filteredKeyPairs.forEach(keyPair => {
|
filteredKeyPairs.forEach(keyPair => {
|
||||||
const privateKey = Buffer.from(base58.decode(keyPair.privateKey))
|
const privateKey = Buffer.from(base58.decode(keyPair.privateKey))
|
||||||
ed25519Fulfillment.sign(
|
ed25519Fulfillment.sign(transactionHash, privateKey)
|
||||||
Buffer.from(transactionHash, 'hex'),
|
|
||||||
privateKey
|
|
||||||
)
|
|
||||||
})
|
})
|
||||||
return ed25519Fulfillment.serializeUri()
|
return ed25519Fulfillment.serializeUri()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: https://github.com/avajs/ava/issues/1190
|
|
||||||
test('', () => 'dirty hack. TODO: Exclude this file from being run by ava')
|
|
||||||
|
Loading…
Reference in New Issue
Block a user