@@ -551,54 +551,54 @@ FOSSIL_TEST_CASE(c_test_jellyfish_find_by_hash_returns_null_for_missing) {
551551 ASSUME_ITS_TRUE (found == NULL );
552552}
553553
554- // FOSSIL_TEST_CASE(c_test_jellyfish_clone_chain_copies_all_blocks) {
555- // fossil_jellyfish_chain_t src, dst;
556- // fossil_jellyfish_init(&src);
557- // fossil_jellyfish_init(&dst);
558- // fossil_jellyfish_learn(&src, "clone", "me");
559- // int result = fossil_jellyfish_clone_chain(&src, &dst);
560- // ASSUME_ITS_EQUAL_I32(result, 0);
561- // ASSUME_ITS_EQUAL_I32(src.count, dst.count);
562- // }
563-
564- // FOSSIL_TEST_CASE(c_test_jellyfish_reason_verbose_returns_match) {
565- // fossil_jellyfish_chain_t chain;
566- // fossil_jellyfish_init(&chain);
567- // fossil_jellyfish_learn(&chain, "input", "output");
568- // char out[64] = {0};
569- // float conf = 0.0f;
570- // const fossil_jellyfish_block_t *block = NULL;
571- // bool found = fossil_jellyfish_reason_verbose(&chain, "input", out, &conf, &block);
572- // ASSUME_ITS_TRUE(found);
573- // ASSUME_ITS_EQUAL_CSTR(out, "output");
574- // ASSUME_ITS_TRUE(conf > 0.0f);
575- // ASSUME_ITS_TRUE(block != NULL);
576- // }
577-
578- // FOSSIL_TEST_CASE(c_test_jellyfish_reason_verbose_returns_false_for_no_match) {
579- // fossil_jellyfish_chain_t chain;
580- // fossil_jellyfish_init(&chain);
581- // char out[64] = {0};
582- // float conf = 0.0f;
583- // const fossil_jellyfish_block_t *block = NULL;
584- // bool found = fossil_jellyfish_reason_verbose(&chain, "nope", out, &conf, &block);
585- // ASSUME_ITS_FALSE(found);
586- // }
587-
588- // FOSSIL_TEST_CASE(c_test_jellyfish_block_sign_and_verify) {
589- // fossil_jellyfish_block_t block;
590- // memset(&block, 0, sizeof(block));
591- // strcpy(block.io.input, "signme");
592- // strcpy(block.io.output, "signed");
593- // for (size_t i = 0; i < FOSSIL_JELLYFISH_HASH_SIZE; ++i)
594- // block.identity.hash[i] = (uint8_t)(i + 1);
595- // uint8_t priv_key[32] = {1};
596- // uint8_t pub_key[32] = {1};
597- // int sign_result = fossil_jellyfish_block_sign(&block, priv_key);
598- // ASSUME_ITS_EQUAL_I32(sign_result, 0);
599- // bool valid = fossil_jellyfish_block_verify_signature(&block, pub_key);
600- // ASSUME_ITS_TRUE(valid || !valid); // Accept both, as implementation may be stub
601- // }
554+ FOSSIL_TEST_CASE (c_test_jellyfish_clone_chain_copies_all_blocks ) {
555+ fossil_jellyfish_chain_t src , dst ;
556+ fossil_jellyfish_init (& src );
557+ fossil_jellyfish_init (& dst );
558+ fossil_jellyfish_learn (& src , "clone" , "me" );
559+ int result = fossil_jellyfish_clone_chain (& src , & dst );
560+ ASSUME_ITS_EQUAL_I32 (result , 0 );
561+ ASSUME_ITS_EQUAL_I32 (src .count , dst .count );
562+ }
563+
564+ FOSSIL_TEST_CASE (c_test_jellyfish_reason_verbose_returns_match ) {
565+ fossil_jellyfish_chain_t chain ;
566+ fossil_jellyfish_init (& chain );
567+ fossil_jellyfish_learn (& chain , "input" , "output" );
568+ char out [64 ] = {0 };
569+ float conf = 0.0f ;
570+ const fossil_jellyfish_block_t * block = NULL ;
571+ bool found = fossil_jellyfish_reason_verbose (& chain , "input" , out , & conf , & block );
572+ ASSUME_ITS_TRUE (found );
573+ ASSUME_ITS_EQUAL_CSTR (out , "output" );
574+ ASSUME_ITS_TRUE (conf > 0.0f );
575+ ASSUME_ITS_TRUE (block != NULL );
576+ }
577+
578+ FOSSIL_TEST_CASE (c_test_jellyfish_reason_verbose_returns_false_for_no_match ) {
579+ fossil_jellyfish_chain_t chain ;
580+ fossil_jellyfish_init (& chain );
581+ char out [64 ] = {0 };
582+ float conf = 0.0f ;
583+ const fossil_jellyfish_block_t * block = NULL ;
584+ bool found = fossil_jellyfish_reason_verbose (& chain , "nope" , out , & conf , & block );
585+ ASSUME_ITS_FALSE (found );
586+ }
587+
588+ FOSSIL_TEST_CASE (c_test_jellyfish_block_sign_and_verify ) {
589+ fossil_jellyfish_block_t block ;
590+ memset (& block , 0 , sizeof (block ));
591+ strcpy (block .io .input , "signme" );
592+ strcpy (block .io .output , "signed" );
593+ for (size_t i = 0 ; i < FOSSIL_JELLYFISH_HASH_SIZE ; ++ i )
594+ block .identity .hash [i ] = (uint8_t )(i + 1 );
595+ uint8_t priv_key [32 ] = {1 };
596+ uint8_t pub_key [32 ] = {1 };
597+ int sign_result = fossil_jellyfish_block_sign (& block , priv_key );
598+ ASSUME_ITS_EQUAL_I32 (sign_result , 0 );
599+ bool valid = fossil_jellyfish_block_verify_signature (& block , pub_key );
600+ ASSUME_ITS_TRUE (valid || !valid ); // Accept both, as implementation may be stub
601+ }
602602
603603// * * * * * * * * * * * * * * * * * * * * * * * *
604604// * Fossil Logic Test Pool
@@ -642,10 +642,10 @@ FOSSIL_TEST_GROUP(c_jellyfish_tests) {
642642 FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_block_explain_outputs_string );
643643 FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_find_by_hash_finds_block );
644644 FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_find_by_hash_returns_null_for_missing );
645- // FOSSIL_TEST_ADD(c_jellyfish_fixture, c_test_jellyfish_clone_chain_copies_all_blocks);
646- // FOSSIL_TEST_ADD(c_jellyfish_fixture, c_test_jellyfish_reason_verbose_returns_match);
647- // FOSSIL_TEST_ADD(c_jellyfish_fixture, c_test_jellyfish_reason_verbose_returns_false_for_no_match);
648- // FOSSIL_TEST_ADD(c_jellyfish_fixture, c_test_jellyfish_block_sign_and_verify);
645+ FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_clone_chain_copies_all_blocks );
646+ FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_reason_verbose_returns_match );
647+ FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_reason_verbose_returns_false_for_no_match );
648+ FOSSIL_TEST_ADD (c_jellyfish_fixture , c_test_jellyfish_block_sign_and_verify );
649649
650650 FOSSIL_TEST_REGISTER (c_jellyfish_fixture );
651651} // end of tests
0 commit comments