bool Test_cn_cbor_array_replace() { cn_cbor * pRoot; cn_cbor * pItem; // Cases that are not currently covered // 1. Pass in invalid arguements cn_cbor_array_replace(NULL, NULL, 0, CBOR_CONTEXT_PARAM_COMMA NULL); // 2. Insert 0 item with no items currently in the list pRoot = cn_cbor_array_create(CBOR_CONTEXT_PARAM_COMMA NULL); pItem = cn_cbor_int_create(5, CBOR_CONTEXT_PARAM_COMMA NULL); cn_cbor_array_replace(pRoot, pItem, 0, CBOR_CONTEXT_PARAM_COMMA NULL); // 3. Insert 0 item w/ exactly one item in the list pItem = cn_cbor_int_create(6, CBOR_CONTEXT_PARAM_COMMA NULL); cn_cbor_array_replace(pRoot, pItem, 0, CBOR_CONTEXT_PARAM_COMMA NULL); // 4. The last item in the array pItem = cn_cbor_int_create(7, CBOR_CONTEXT_PARAM_COMMA NULL); cn_cbor_array_replace(pRoot, pItem, 1, CBOR_CONTEXT_PARAM_COMMA NULL); pItem = cn_cbor_int_create(8, CBOR_CONTEXT_PARAM_COMMA NULL); cn_cbor_array_replace(pRoot, pItem, 1, CBOR_CONTEXT_PARAM_COMMA NULL); return true; }
bool _COSE_array_replace(COSE * pMessage, cn_cbor * cb_value, int index, CBOR_CONTEXT_COMMA cn_cbor_errback * errp) { #ifdef TAG_IN_ARRAY if (pMessage->m_msgType != 0) index += 1; #endif return cn_cbor_array_replace(pMessage->m_cbor, cb_value, index, CBOR_CONTEXT_PARAM_COMMA errp); }