mirror of
https://github.com/planetmint/planetmint.git
synced 2025-11-26 07:25:44 +00:00
91 lines
2.4 KiB
Python
91 lines
2.4 KiB
Python
# Copyright © 2020 Interplanetary Database Association e.V.,
|
|
# Planetmint and IPDB software contributors.
|
|
# SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
|
|
# Code is Apache-2.0 and docs are CC-BY-4.0
|
|
|
|
import pytest
|
|
|
|
GENERATE_KEYPAIR = \
|
|
"""Rule input encoding base58
|
|
Rule output encoding base58
|
|
Scenario 'ecdh': Create the keypair
|
|
Given that I am known as 'Pippo'
|
|
When I create the ecdh key
|
|
When I create the testnet key
|
|
Then print data"""
|
|
|
|
# secret key to public key
|
|
SK_TO_PK = \
|
|
"""Rule input encoding base58
|
|
Rule output encoding base58
|
|
Scenario 'ecdh': Create the keypair
|
|
Given that I am known as '{}'
|
|
Given I have the 'keys'
|
|
When I create the ecdh public key
|
|
When I create the testnet address
|
|
Then print my 'ecdh public key'
|
|
Then print my 'testnet address'"""
|
|
|
|
FULFILL_SCRIPT = \
|
|
"""Rule input encoding base58
|
|
Rule output encoding base58
|
|
Scenario 'ecdh': Bob verifies the signature from Alice
|
|
Given I have a 'ecdh public key' from 'Alice'
|
|
Given that I have a 'string dictionary' named 'houses' inside 'asset'
|
|
Given I have a 'signature' named 'data.signature' inside 'result'
|
|
When I verify the 'houses' has a signature in 'data.signature' by 'Alice'
|
|
Then print the string 'ok'"""
|
|
|
|
HOUSE_ASSETS = [
|
|
{
|
|
"data": {
|
|
"houses": [
|
|
{
|
|
"name": "Harry",
|
|
"team": "Gryffindor",
|
|
},
|
|
{
|
|
"name": "Draco",
|
|
"team": "Slytherin",
|
|
}
|
|
],
|
|
}
|
|
}
|
|
]
|
|
|
|
ZENROOM_DATA = {
|
|
'also': 'more data'
|
|
}
|
|
|
|
CONDITION_SCRIPT = """Rule input encoding base58
|
|
Rule output encoding base58
|
|
Scenario 'ecdh': create the signature of an object
|
|
Given I have the 'keys'
|
|
Given that I have a 'string dictionary' named 'houses' inside 'asset'
|
|
When I create the signature of 'houses'
|
|
When I rename the 'signature' to 'data.signature'
|
|
Then print the 'data.signature'"""
|
|
|
|
@pytest.fixture
|
|
def gen_key_zencode():
|
|
return GENERATE_KEYPAIR
|
|
|
|
@pytest.fixture
|
|
def secret_key_to_private_key_zencode():
|
|
return SK_TO_PK
|
|
|
|
@pytest.fixture
|
|
def fulfill_script_zencode():
|
|
return FULFILL_SCRIPT
|
|
|
|
@pytest.fixture
|
|
def condition_script_zencode():
|
|
return CONDITION_SCRIPT
|
|
|
|
@pytest.fixture
|
|
def zenroom_house_assets():
|
|
return HOUSE_ASSETS
|
|
|
|
@pytest.fixture
|
|
def zenroom_data():
|
|
return ZENROOM_DATA |