1212#define TEST_DETAILS_PUBLIC_KEY "6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a"
1313#define TEST_PUBLIC_KEY_0 "6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a"
1414static const char * tx_json =
15- "{\"asset\":{\"data\":{\"bicycle\":{\"manufacturer\":\"bkfab\",\"serial_number\":\"abcd1234\"}}},\"id\":null,\"inputs\":[{\"fulfillment\":null,\"fulfills\":null,\"owners_before\":[\"6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a\"]}],\"metadata\":{\"planet\":\"earth\"},\"operation\":\"CREATE\",\"outputs\":[{\"amount\":\"1\",\"condition\":{\"details\":{\"public_key\":\"6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a\",\"type\":\"ed25519-sha-256\"},\"uri\":\"ni:///sha-256;Vta3W592Kt_Y2ljfHEDZLd4OCZPHLiHyCgjNNKrrNwo?fpt=ed25519-sha-256&cost=131072\"},\"public_keys\":[\"6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a\"]}],\"version\":\"2.0\"}" ;
15+ "{\"asset\":{\"data\":{\"bicycle\":{\"manufacturer\":\"bkfab\",\"serial_number\":\"abcd1234\"}}},\"id\":null,\"inputs\":[{\"fulfillment\":null,\"fulfills\":null,\"owners_before\":[\"6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a\"]}],\"metadata\":{\"planet\":\"earth\"},\"operation\":\"CREATE\",\"outputs\":[{\"amount\":\"1\",\"condition\":{\"details\":{\"public_key\":\"6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a\",\"type\":\"ed25519-sha-256\"},\"uri\":\"ni:///sha-256;Vta3W592Kt_Y2ljfHEDZLd4OCZPHLiHyCgjNNKrrNwo?fpt=ed25519-sha-256&cost=131072\"},\"public_keys\":[\"6k17YAe4mJsqwPNgGj9tE1aMYLhpeqgJJivqaHeTTU5a\"]}],\"version\":\"2.0\"}" ;
1616char privkey [] = {'\x24' ,'\x70' ,'\x31' ,'\x98' ,'\x89' ,'\xfe' ,'\xd2' ,'\x13' ,'\x9a' ,'\x6d' ,'\xd9' ,'\x9e' ,'\xa3' ,'\xae' ,'\xf2' ,'\xd3' ,'\x96' ,'\xe9' ,'\xe7' ,'\x47' ,'\x51' ,'\x32' ,'\x33' ,'\x7b' ,'\xdb' ,'\x04' ,'\xd4' ,'\x7c' ,'\xa7' ,'\xd2' ,'\x02' ,'\x8c' };
1717char pubkey [] = {'\x55' ,'\x4e' ,'\x89' ,'\x70' ,'\x1b' ,'\x6d' ,'\xca' ,'\x9b' ,'\x28' ,'\x61' ,'\x1f' ,'\xb3' ,'\x61' ,'\x41' ,'\x71' ,'\x3a' ,'\x2e' ,'\x18' ,'\x52' ,'\x02' ,'\x0e' ,'\x8e' ,'\xa8' ,'\xa0' ,'\x2e' ,'\x27' ,'\xda' ,'\x40' ,'\xef' ,'\xac' ,'\xcc' ,'\x25' };
1818
19- void prepare_inputs (BIGCHAIN_INPUT * inputs , uint8_t * num_inputs )
20- {
19+ void prepare_inputs (BIGCHAIN_INPUT * inputs , uint8_t * num_inputs ) {
2120 memset (inputs , 0 , sizeof (BIGCHAIN_INPUT ));
22-
21+
2322 // Fill input struct
2423 memcpy (inputs [0 ].owners_before [0 ], TEST_OWNER_BEFORE , strlen (TEST_OWNER_BEFORE ));
2524 inputs [0 ].num_owners = 1 ;
2625 * num_inputs = 1 ;
2726}
2827
29- void prepare_outputs (BIGCHAIN_OUTPUT * outputs , uint8_t * num_outputs )
30- {
28+ void prepare_outputs (BIGCHAIN_OUTPUT * outputs , uint8_t * num_outputs ) {
3129 memset (outputs , 0 , sizeof (BIGCHAIN_OUTPUT ));
3230
3331 // Fill output struct
@@ -38,11 +36,10 @@ void prepare_outputs(BIGCHAIN_OUTPUT *outputs, uint8_t *num_outputs)
3836 * num_outputs = 1 ;
3937}
4038
41- void prepare_tx (BIGCHAIN_TX * tx )
42- {
39+ void prepare_tx (BIGCHAIN_TX * tx ) {
4340 prepare_inputs (tx -> inputs , & (tx -> num_inputs ));
4441 prepare_outputs (tx -> outputs , & (tx -> num_outputs ));
45-
42+
4643 memcpy (tx -> asset , TEST_ASSET , strlen (TEST_ASSET ));
4744 memcpy (tx -> metadata , TEST_METADATA , strlen (TEST_METADATA ));
4845 memcpy (tx -> operation , TEST_OPERATION , strlen (TEST_OPERATION ));
@@ -52,11 +49,11 @@ void prepare_tx(BIGCHAIN_TX *tx)
5249void test_sig (void ) {
5350 uint8_t hash [32 ] = {0 }, sig [640 ] = {0 };
5451
55- // Hashing 256
52+ // Hashing 256
5653 sha3_256 ((const unsigned char * )tx_json , strlen (tx_json ), hash );
57- uint8_t cmp_hash [] = {'\xbb' ,'\xb7' ,'\xdf' ,'\xd5' ,'\x1b' ,'\xe3' ,'\xbb' ,'\x66' ,'\x91' ,'\x80' ,'\xf4' ,'\x8b' ,'\x37' ,'\xf1' ,'\x86' ,'\x98' ,'\xb8' ,'\x2c' ,'\xfc' ,'\x40' ,'\xea' ,'\x4c' ,'\xa4' ,'\x95' ,'\x2a' ,'\x1c' ,'\x82' ,'\xeb' ,'\x11' ,'\xff' ,'\x5f' ,'\xb5' };
54+ uint8_t cmp_hash [] = {'\xbb' ,'\xb7' ,'\xdf' ,'\xd5' ,'\x1b' ,'\xe3' ,'\xbb' ,'\x66' ,'\x91' ,'\x80' ,'\xf4' ,'\x8b' ,'\x37' ,'\xf1' ,'\x86' ,'\x98' ,'\xb8' ,'\x2c' ,'\xfc' ,'\x40' ,'\xea' ,'\x4c' ,'\xa4' ,'\x95' ,'\x2a' ,'\x1c' ,'\x82' ,'\xeb' ,'\x11' ,'\xff' ,'\x5f' ,'\xb5' };
5855 TEST_ASSERT_EQUAL (0 , memcmp (cmp_hash , hash , 32 ));
59-
56+
6057 // ED25519 signing
6158 uint8_t cmp_sig [] = {'\x8d' ,'\x31' ,'\xa2' ,'\x89' ,'\xe9' ,'\xa5' ,'\x74' ,'\xdd' ,'\xa7' ,'\x0d' ,'\x06' ,'\xa7' ,'\x18' ,'\x09' ,'\xf7' ,'\xc4' ,'\x58' ,'\x07' ,'\x0d' ,'\x41' ,'\xd8' ,'\x71' ,'\x4b' ,'\x5a' ,'\x3b' ,'\x6d' ,'\xe6' ,'\xfa' ,'\x22' ,'\xca' ,'\x71' ,'\x7e' ,'\xdd' ,'\x18' ,'\x9a' ,'\x0b' ,'\xf6' ,'\xfa' ,'\x85' ,'\x25' ,'\x38' ,'\x50' ,'\x1e' ,'\x4f' ,'\xa2' ,'\x9e' ,'\x3f' ,'\xae' ,'\x70' ,'\x2e' ,'\xcf' ,'\xd2' ,'\x39' ,'\x22' ,'\xab' ,'\x2d' ,'\x16' ,'\x80' ,'\x20' ,'\x0f' ,'\xd4' ,'\xef' ,'\x99' ,'\x02' };
6259 ed25519_sign (hash , 32 , (const unsigned char * ) privkey , (const unsigned char * ) pubkey , sig );
@@ -66,9 +63,8 @@ void test_sig(void) {
6663 TEST_ASSERT_EQUAL (0 , memcmp (cmp_sig , sig , 64 ));
6764}
6865
69- void test_bigchain_build_json_outputs (void )
70- {
71- BIGCHAIN_OUTPUT outputs [1 ];
66+ void test_bigchain_build_json_outputs (void ) {
67+ BIGCHAIN_OUTPUT outputs [1 ];
7268 char outputs_json [512 ] = {0 };
7369 uint8_t num = 0 ;
7470 prepare_outputs (outputs , & num );
@@ -79,22 +75,20 @@ void test_bigchain_build_json_outputs(void)
7975
8076}
8177
82- void test_bigchain_build_json_inputs (void )
83- {
78+ void test_bigchain_build_json_inputs (void ) {
8479 BIGCHAIN_INPUT inputs [1 ];
8580 char inputs_json [256 ] = {0 };
8681 uint8_t num = 0 ;
8782
8883 prepare_inputs (inputs , & num );
89-
84+
9085 // Builds input json from structure
9186 bigchain_build_json_inputs (inputs , 1 , inputs_json );
9287 TEST_ASSERT_EQUAL (0 , memcmp (TEST_INPUTS , inputs_json , strlen (TEST_INPUTS )));
9388
9489}
9590
96- void test_bigchain_build_json_tx (void )
97- {
91+ void test_bigchain_build_json_tx (void ) {
9892 BIGCHAIN_TX tx ;
9993 char json [6000 ] = {0 };
10094
0 commit comments