Skip to content
This repository was archived by the owner on Dec 26, 2022. It is now read-only.

Commit c4f88e9

Browse files
committed
feat: Cleanup send/receive mam API
entangled implement MAM JS binding related APIs. Synchronize entangled to current commit to meet our needs.
1 parent cc02c57 commit c4f88e9

File tree

4 files changed

+33
-32
lines changed

4 files changed

+33
-32
lines changed

WORKSPACE

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ load("//third_party:third_party.bzl", "third_party_deps")
33

44
git_repository(
55
name = "rules_iota",
6-
commit = "8a302aaeba60b9eb38f6500d48249b8cbba16c73",
6+
commit = "be6081052283769b9b934d66b824f31695014c82",
77
remote = "https://github.com/iotaledger/rules_iota.git",
88
)
99

@@ -15,7 +15,7 @@ git_repository(
1515

1616
git_repository(
1717
name = "entangled",
18-
commit = "6ad56514a8a13fb1bf01beb10934cb9e3fd1a8a4",
18+
commit = "46cab95db5fa1e03274446d9f2df9a4b7ba12462",
1919
remote = "https://github.com/iotaledger/entangled.git",
2020
)
2121

accelerator/apis.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -237,13 +237,13 @@ status_t api_mam_send_message(const iota_config_t* const tangle, const iota_clie
237237
const bool last_packet = true;
238238
bundle_transactions_t* bundle = NULL;
239239
bundle_transactions_new(&bundle);
240-
tryte_t channel_id[MAM_CHANNEL_ID_SIZE];
240+
tryte_t channel_id[MAM_CHANNEL_ID_TRYTE_SIZE];
241241
trit_t msg_id[MAM_MSG_ID_SIZE];
242242
ta_send_mam_req_t* req = send_mam_req_new();
243243
ta_send_mam_res_t* res = send_mam_res_new();
244244

245245
// Loading and creating MAM API
246-
if ((rc = mam_api_load(tangle->mam_file, &mam)) == RC_UTILS_FAILED_TO_OPEN_FILE) {
246+
if ((rc = mam_api_load(tangle->mam_file, &mam, NULL, NULL)) == RC_UTILS_FAILED_TO_OPEN_FILE) {
247247
if (mam_api_init(&mam, (tryte_t*)SEED)) {
248248
ret = SC_MAM_FAILED_INIT;
249249
goto done;
@@ -260,7 +260,7 @@ status_t api_mam_send_message(const iota_config_t* const tangle, const iota_clie
260260

261261
// Create mam channel
262262
if (mam_channel_t_set_size(mam.channels) == 0) {
263-
mam_api_create_channel(&mam, tangle->mss_depth, channel_id);
263+
mam_api_channel_create(&mam, tangle->mss_depth, channel_id);
264264
} else {
265265
mam_channel_t* channel = &mam.channels->value;
266266
trits_to_trytes(trits_begin(mam_channel_id(channel)), channel_id, NUM_TRITS_ADDRESS);
@@ -290,7 +290,7 @@ status_t api_mam_send_message(const iota_config_t* const tangle, const iota_clie
290290
done:
291291
// Save and destroying MAM API
292292
if (ret != SC_MAM_FAILED_INIT) {
293-
if (mam_api_save(&mam, tangle->mam_file) || mam_api_destroy(&mam)) {
293+
if (mam_api_save(&mam, tangle->mam_file, NULL, NULL) || mam_api_destroy(&mam)) {
294294
ret = SC_MAM_FAILED_DESTROYED;
295295
}
296296
}

tests/iota_api_mock.cc

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
#include "iota_api_mock.hh"
2+
23
extern APIMock APIMockObj;
34

4-
retcode_t iota_client_get_transactions_to_approve(const iota_client_service_t* const service,
5-
const get_transactions_to_approve_req_t* const req,
5+
retcode_t iota_client_get_transactions_to_approve(iota_client_service_t const* const service,
6+
get_transactions_to_approve_req_t const* const req,
67
get_transactions_to_approve_res_t* res) {
78
flex_trit_t hash_trits_1[FLEX_TRIT_SIZE_243], hash_trits_2[FLEX_TRIT_SIZE_243];
89
flex_trits_from_trytes(hash_trits_1, NUM_TRITS_HASH, (const tryte_t*)TRYTES_81_1, NUM_TRYTES_HASH, NUM_TRYTES_HASH);
@@ -12,23 +13,23 @@ retcode_t iota_client_get_transactions_to_approve(const iota_client_service_t* c
1213
return APIMockObj.iota_client_get_transactions_to_approve(service, req, res);
1314
}
1415

15-
retcode_t iota_client_get_tips(const iota_client_service_t* const service, get_tips_res_t* res) {
16+
retcode_t iota_client_get_tips(iota_client_service_t const* const service, get_tips_res_t* res) {
1617
flex_trit_t hash_trits_1[FLEX_TRIT_SIZE_243];
1718
flex_trits_from_trytes(hash_trits_1, NUM_TRITS_HASH, (const tryte_t*)TRYTES_81_1, NUM_TRYTES_HASH, NUM_TRYTES_HASH);
1819
hash243_stack_push(&res->hashes, hash_trits_1);
1920
return APIMockObj.iota_client_get_tips(service, res);
2021
}
2122

22-
retcode_t iota_client_find_transactions(const iota_client_service_t* const service,
23-
const find_transactions_req_t* const req, find_transactions_res_t* res) {
23+
retcode_t iota_client_find_transactions(iota_client_service_t const* const service,
24+
find_transactions_req_t const* const req, find_transactions_res_t* res) {
2425
flex_trit_t hash_trits_1[FLEX_TRIT_SIZE_243];
2526
flex_trits_from_trytes(hash_trits_1, NUM_TRITS_HASH, (const tryte_t*)TRYTES_81_1, NUM_TRYTES_HASH, NUM_TRYTES_HASH);
2627
hash243_queue_push(&res->hashes, hash_trits_1);
2728
return APIMockObj.iota_client_find_transactions(service, req, res);
2829
}
2930

30-
retcode_t iota_client_find_transaction_objects(const iota_client_service_t* const service,
31-
const find_transactions_req_t* const req, transaction_array_t* tx_objs) {
31+
retcode_t iota_client_find_transaction_objects(iota_client_service_t const* const service,
32+
find_transactions_req_t const* const req, transaction_array_t* tx_objs) {
3233
flex_trit_t tx_trits[FLEX_TRIT_SIZE_8019];
3334
iota_transaction_t tx;
3435

@@ -47,7 +48,7 @@ retcode_t iota_client_get_new_address(iota_client_service_t const* const serv, f
4748
return APIMockObj.iota_client_get_new_address(serv, seed, addr_opt, out_addresses);
4849
}
4950

50-
retcode_t iota_client_get_trytes(const iota_client_service_t* const service, get_trytes_req_t* const req,
51+
retcode_t iota_client_get_trytes(iota_client_service_t const* const service, get_trytes_req_t const* const req,
5152
get_trytes_res_t* res) {
5253
flex_trit_t tx_trits[FLEX_TRIT_SIZE_8019];
5354
flex_trits_from_trytes(tx_trits, NUM_TRITS_SERIALIZED_TRANSACTION, (const tryte_t*)TRYTES_2673_1,
@@ -56,7 +57,7 @@ retcode_t iota_client_get_trytes(const iota_client_service_t* const service, get
5657
return APIMockObj.iota_client_get_trytes(service, req, res);
5758
}
5859

59-
status_t ta_send_trytes(const iota_config_t* const tangle, const iota_client_service_t* const service,
60+
status_t ta_send_trytes(iota_config_t const* const tangle, const iota_client_service_t* const service,
6061
hash8019_array_p trytes) {
6162
return APIMockObj.ta_send_trytes(tangle, service, trytes);
6263
}

tests/iota_api_mock.hh

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,33 +12,33 @@
1212
class IotaAPI {
1313
public:
1414
virtual ~IotaAPI() {}
15-
virtual retcode_t iota_client_get_transactions_to_approve(const iota_client_service_t* const service,
16-
const get_transactions_to_approve_req_t* const req,
15+
virtual retcode_t iota_client_get_transactions_to_approve(iota_client_service_t const* const service,
16+
get_transactions_to_approve_req_t const* const req,
1717
get_transactions_to_approve_res_t* res) {
1818
return RC_OK;
1919
}
20-
virtual retcode_t iota_client_get_tips(const iota_client_service_t* const service, get_tips_res_t* res) {
20+
virtual retcode_t iota_client_get_tips(iota_client_service_t const* const service, get_tips_res_t* res) {
2121
return RC_OK;
2222
}
23-
virtual retcode_t iota_client_find_transactions(const iota_client_service_t* const service,
24-
const find_transactions_req_t* const req,
23+
virtual retcode_t iota_client_find_transactions(iota_client_service_t const* const service,
24+
find_transactions_req_t const* const req,
2525
find_transactions_res_t* res) {
2626
return RC_OK;
2727
}
28-
virtual retcode_t iota_client_find_transaction_objects(const iota_client_service_t* const service,
29-
const find_transactions_req_t* const req,
28+
virtual retcode_t iota_client_find_transaction_objects(iota_client_service_t const* const service,
29+
find_transactions_req_t const* const req,
3030
transaction_array_t* tx_objs) {
3131
return RC_OK;
3232
}
3333
virtual retcode_t iota_client_get_new_address(iota_client_service_t const* const serv, flex_trit_t const* const seed,
3434
address_opt_t const addr_opt, hash243_queue_t* out_addresses) {
3535
return RC_OK;
3636
}
37-
virtual retcode_t iota_client_get_trytes(const iota_client_service_t* const service, get_trytes_req_t* const req,
38-
get_trytes_res_t* res) {
37+
virtual retcode_t iota_client_get_trytes(iota_client_service_t const* const service,
38+
get_trytes_req_t const* const req, get_trytes_res_t* res) {
3939
return RC_OK;
4040
}
41-
virtual status_t ta_send_trytes(const iota_config_t* const tangle, const iota_client_service_t* const service,
41+
virtual status_t ta_send_trytes(iota_config_t const* const tangle, const iota_client_service_t* const service,
4242
hash8019_array_p trytes) {
4343
return SC_OK;
4444
}
@@ -53,20 +53,20 @@ class APIMock : public IotaAPI {
5353
public:
5454
virtual ~APIMock() {}
5555
MOCK_METHOD3(iota_client_get_transactions_to_approve,
56-
retcode_t(const iota_client_service_t* const service, const get_transactions_to_approve_req_t* const req,
56+
retcode_t(iota_client_service_t const* const service, get_transactions_to_approve_req_t const* const req,
5757
get_transactions_to_approve_res_t* res));
58-
MOCK_METHOD2(iota_client_get_tips, retcode_t(const iota_client_service_t* const service, get_tips_res_t* res));
58+
MOCK_METHOD2(iota_client_get_tips, retcode_t(iota_client_service_t const* const service, get_tips_res_t* res));
5959
MOCK_METHOD3(iota_client_find_transactions,
60-
retcode_t(const iota_client_service_t* const service, const find_transactions_req_t* const req,
60+
retcode_t(iota_client_service_t const* const service, find_transactions_req_t const* const req,
6161
find_transactions_res_t* res));
6262
MOCK_METHOD3(iota_client_find_transaction_objects,
63-
retcode_t(const iota_client_service_t* const service, const find_transactions_req_t* const req,
63+
retcode_t(iota_client_service_t const* const service, find_transactions_req_t const* const req,
6464
transaction_array_t* tx_objs));
6565
MOCK_METHOD4(iota_client_get_new_address,
6666
retcode_t(iota_client_service_t const* const serv, flex_trit_t const* const seed,
6767
address_opt_t const addr_opt, hash243_queue_t* out_addresses));
68-
MOCK_METHOD3(iota_client_get_trytes, retcode_t(const iota_client_service_t* const service,
69-
get_trytes_req_t* const req, get_trytes_res_t* res));
70-
MOCK_METHOD3(ta_send_trytes, status_t(const iota_config_t* const tangle, const iota_client_service_t* const service,
68+
MOCK_METHOD3(iota_client_get_trytes, retcode_t(iota_client_service_t const* const service,
69+
get_trytes_req_t const* const req, get_trytes_res_t* res));
70+
MOCK_METHOD3(ta_send_trytes, status_t(iota_config_t const* const tangle, const iota_client_service_t* const service,
7171
hash8019_array_p trytes));
7272
};

0 commit comments

Comments
 (0)