unsigned int test_xb200(struct bladerf *dev, struct app_params *p, bool quiet) { unsigned int failures = 0; if (!p->use_xb200) { return 0; } PRINT("%s: Setting and reading back filter bank settings...\n", __FUNCTION__); failures += test_filterbanks(dev); PRINT("%s: Setting and reading back path settings...\n", __FUNCTION__); failures += test_paths(dev); return failures; }
variable_t* update_var(variable_t* evar, variable_t* vvar) { linked_list* testlist; switch (vvar->type) { case VAR_LIT_SET: evar->literal = vvar->literal; evar->type = VAR_LIT_SET; break; case VAR_PATH_SET: evar->pathlist = vvar->pathlist; evar->type = VAR_PATH_SET; break; case VAR_PATH_ADD: switch (evar->type) { case VAR_LIT_SET: evar->pathlist = merge_paths(make_pathlist(evar->literal), vvar->pathlist); break; case VAR_PATH_SET: case VAR_PATH_ADD: evar->pathlist = merge_paths(evar->pathlist, vvar->pathlist); break; default: break; } evar->type = VAR_PATH_ADD; break; case VAR_PATH_TESTSET: testlist = test_paths(vvar->pathlist); if (head(testlist)) { evar->pathlist = testlist; } else { evar->pathlist = NULL; } evar->type = VAR_PATH_SET; break; case VAR_PATH_TESTADD: switch (evar->type) { case VAR_LIT_SET: evar->pathlist = merge_paths(make_pathlist(evar->literal), test_paths(vvar->pathlist)); break; case VAR_PATH_SET: case VAR_PATH_ADD: evar->pathlist = merge_paths(evar->pathlist, test_paths(vvar->pathlist)); break; default: break; } evar->type = VAR_PATH_ADD; break; default: break; } return(evar); }
int main(int argc, char **argv) { cortex_init(); cmd_init(argc, argv); ctx_msg_out = NULL; ctx_tst_out = stdout; test_status("Tests running k=%i..%i...", get_min_kmer_size(), get_max_kmer_size()); test_status("[version] "VERSION_STATUS_STR"\n"); // Binary Kmer tests should work for all values of MAXK test_bkmer_functions(); test_hash_table(); #if MAX_KMER_SIZE == 31 // not kmer dependent test_util(); test_dna_functions(); test_binary_seq_functions(); // only written in k=31 test_db_node(); test_build_graph(); test_supernode(); test_subgraph(); test_cleaning(); test_paths(); // test_path_sets(); // TODO: replace with test_path_subset() test_graph_walker(); test_corrected_aln(); test_repeat_walker(); test_graph_crawler(); test_bubble_caller(); test_kmer_occur(); test_infer_edges_tests(); #endif cmd_destroy(); // Check we free'd all our memory size_t still_alloced = alloc_get_num_allocs() - alloc_get_num_frees(); TASSERT2(still_alloced == 0, "%zu not free'd", still_alloced); // Finished char num_test_str[100], num_passed_str[100]; size_t tests_num_passed = tests_num_run - tests_num_failed; ulong_to_str(tests_num_run, num_test_str); ulong_to_str(tests_num_passed, num_passed_str); test_status("Tests passed: %s / %s (%.1f%%)", num_passed_str, num_test_str, (100.0*tests_num_passed)/tests_num_run); if(tests_num_failed) test_status("%zu tests failed", tests_num_failed); else test_status("All tests passed."); cortex_destroy(); // Return 1 if any tests failed, 0 on success return tests_num_failed ? 1 : 0; }