From 4b582df8f1609f08d27c26b8edd903348baa4323 Mon Sep 17 00:00:00 2001 From: Leandro Ishi Date: Thu, 7 Dec 2023 17:32:58 +0000 Subject: [PATCH 1/4] fix: now not erroring out when a non-ACGT base is in the query file which is very common --- .gitignore | 1 + cobs/util/query.cpp | 68 ++++---- tests/data/non_acgt_test/index.cobs_classic | Bin 0 -> 83614 bytes tests/data/non_acgt_test/test_1.fastq.gz | Bin 0 -> 9413 bytes tests/data/non_acgt_test/truth.out | 184 ++++++++++++++++++++ tests/non_acgt_test.cpp | 35 ++++ tests/util.cpp | 6 +- 7 files changed, 257 insertions(+), 37 deletions(-) create mode 100644 tests/data/non_acgt_test/index.cobs_classic create mode 100644 tests/data/non_acgt_test/test_1.fastq.gz create mode 100644 tests/data/non_acgt_test/truth.out create mode 100644 tests/non_acgt_test.cpp diff --git a/.gitignore b/.gitignore index e8b352a..b83277b 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ python/docs/_generated __pycache__ cobs*.tar cobs*.tar.gz +!tests/data/non_acgt_test/index.cobs_classic diff --git a/cobs/util/query.cpp b/cobs/util/query.cpp index 98dd82d..6ab9256 100644 --- a/cobs/util/query.cpp +++ b/cobs/util/query.cpp @@ -140,44 +140,44 @@ void destroy_mmap(MMapHandle& handle) close_file(handle.fd); } -//! forward character map. A -> A, C -> C, G -> G, T -> T. rest maps to zero. +//! forward character map. A -> A, C -> C, G -> G, T -> T. rest also maps to A to handle non-ACGT bases and not error out. static const char canonicalize_basepair_forward_map[256] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 65, 0, 67, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 67, 65, 65, 65, 71, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 84, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, }; -//! reverse character map. A -> T, C -> G, G -> C, T -> A. rest maps to zero. +//! reverse character map. A -> T, C -> G, G -> C, T -> A. rest also maps to T to handle non-ACGT bases and not error out. static const char canonicalize_basepair_reverse_map[256] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 84, 0, 71, 0, 0, 0, 67, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 71, 84, 84, 84, 67, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 65, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, }; bool canonicalize_kmer(const char* input, char* output, uint64_t size) diff --git a/tests/data/non_acgt_test/index.cobs_classic b/tests/data/non_acgt_test/index.cobs_classic new file mode 100644 index 0000000000000000000000000000000000000000..2caef366fb41c96bc30759a40411ee12acef99b5 GIT binary patch literal 83614 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 literal 0 HcmV?d00001 diff --git a/tests/data/non_acgt_test/test_1.fastq.gz b/tests/data/non_acgt_test/test_1.fastq.gz new file mode 100644 index 0000000000000000000000000000000000000000..b4bdd21c6ab795635b8130207c4564d4058a68a0 GIT binary patch literal 9413 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 Lr0uSQ9)|z`K;meJ literal 0 HcmV?d00001 diff --git a/tests/data/non_acgt_test/truth.out b/tests/data/non_acgt_test/truth.out new file mode 100644 index 0000000..f0544c7 --- /dev/null +++ b/tests/data/non_acgt_test/truth.out @@ -0,0 +1,184 @@ +*ERR5069949.2151832 1 +genome 120 +*ERR5069949.576388 1 +genome 47 +*ERR5069949.501486 1 +genome 116 +*ERR5069949.1331889 1 +genome 102 +*ERR5069949.2161340 1 +genome 50 +*ERR5069949.973930 0 +*ERR5069949.2417063 1 +genome 120 +*ERR5069949.376959 1 +genome 121 +*ERR5069949.1088785 0 +*ERR5069949.1066259 1 +genome 117 +*ERR5069949.2832676 1 +genome 109 +*ERR5069949.2953930 1 +genome 121 +*ERR5069949.324865 0 +*ERR5069949.2185111 1 +genome 104 +*ERR5069949.937422 1 +genome 100 +*ERR5069949.2431709 0 +*ERR5069949.1246538 1 +genome 118 +*ERR5069949.1189252 1 +genome 68 +*ERR5069949.2216307 1 +genome 98 +*ERR5069949.3273002 1 +genome 97 +*ERR5069949.3277445 1 +genome 121 +*ERR5069949.3022231 1 +genome 117 +*ERR5069949.184542 0 +*ERR5069949.540529 1 +genome 119 +*ERR5069949.686090 1 +genome 114 +*ERR5069949.2787556 1 +genome 63 +*ERR5069949.2650879 1 +genome 120 +*ERR5069949.2064910 1 +genome 102 +*ERR5069949.2328704 1 +genome 120 +*ERR5069949.1067032 1 +genome 99 +*ERR5069949.3338256 1 +genome 121 +*ERR5069949.1412839 1 +genome 117 +*ERR5069949.1538968 1 +genome 120 +*ERR5069949.147998 1 +genome 64 +*ERR5069949.366975 1 +genome 76 +*ERR5069949.1372331 1 +genome 121 +*ERR5069949.1709367 1 +genome 94 +*ERR5069949.2388984 1 +genome 120 +*ERR5069949.1132353 1 +genome 120 +*ERR5069949.1151736 1 +genome 121 +*ERR5069949.479807 1 +genome 120 +*ERR5069949.2176303 1 +genome 121 +*ERR5069949.2772897 1 +genome 117 +*ERR5069949.1020777 1 +genome 92 +*ERR5069949.465452 1 +genome 98 +*ERR5069949.1704586 1 +genome 119 +*ERR5069949.1258508 1 +genome 121 +*ERR5069949.986441 0 +*ERR5069949.2674295 1 +genome 118 +*ERR5069949.885966 0 +*ERR5069949.2342766 1 +genome 121 +*ERR5069949.3122970 1 +genome 97 +*ERR5069949.3279513 0 +*ERR5069949.309410 1 +genome 121 +*ERR5069949.532979 1 +genome 119 +*ERR5069949.2888794 1 +genome 121 +*ERR5069949.2205229 1 +genome 112 +*ERR5069949.786562 1 +genome 121 +*ERR5069949.919671 1 +genome 121 +*ERR5069949.1328186 1 +genome 121 +*ERR5069949.870926 1 +genome 119 +*ERR5069949.2257580 1 +genome 121 +*ERR5069949.3249622 0 +*ERR5069949.611123 1 +genome 95 +*ERR5069949.651338 0 +*ERR5069949.169513 1 +genome 62 +*ERR5069949.155944 0 +*ERR5069949.2033605 1 +genome 120 +*ERR5069949.2730382 1 +genome 112 +*ERR5069949.2125592 1 +genome 120 +*ERR5069949.1062611 1 +genome 121 +*ERR5069949.1778133 1 +genome 117 +*ERR5069949.3057020 1 +genome 60 +*ERR5069949.2972968 0 +*ERR5069949.2734474 1 +genome 119 +*ERR5069949.856527 1 +genome 100 +*ERR5069949.2098070 1 +genome 121 +*ERR5069949.1552198 1 +genome 120 +*ERR5069949.2385514 1 +genome 120 +*ERR5069949.2270078 1 +genome 121 +*ERR5069949.114870 1 +genome 120 +*ERR5069949.2668880 1 +genome 117 +*ERR5069949.257821 1 +genome 109 +*ERR5069949.2243023 1 +genome 120 +*ERR5069949.2605155 1 +genome 116 +*ERR5069949.1340552 1 +genome 121 +*ERR5069949.1561137 1 +genome 120 +*ERR5069949.2361683 1 +genome 119 +*ERR5069949.2521353 0 +*ERR5069949.1261808 0 +*ERR5069949.2734873 1 +genome 68 +*ERR5069949.3017828 1 +genome 77 +*ERR5069949.573706 1 +genome 97 +*ERR5069949.1980512 1 +genome 121 +*ERR5069949.1014693 1 +genome 120 +*ERR5069949.3184655 1 +genome 120 +*ERR5069949.29668 0 +*ERR5069949.3258358 0 +*ERR5069949.1476386 1 +genome 121 +*ERR5069949.2415814 1 +genome 120 diff --git a/tests/non_acgt_test.cpp b/tests/non_acgt_test.cpp new file mode 100644 index 0000000..a7ed819 --- /dev/null +++ b/tests/non_acgt_test.cpp @@ -0,0 +1,35 @@ +#include "test_util.hpp" +#include +#include + +namespace fs = cobs::fs; + +static fs::path base_dir = "data/non_acgt_test"; +static fs::path work_dir = base_dir / "work"; + +class non_acgt_test : public ::testing::Test +{ +protected: + static void SetUpTestSuite() { + cobs::error_code ec; + fs::create_directories(work_dir, ec); + } + static void TearDownTestSuite() { + cobs::error_code ec; + fs::remove_all(work_dir, ec); + } +}; + + +TEST_F(non_acgt_test, non_acgt_test_main_test) { + fs::path index_file{base_dir / "index.cobs_classic"}; + cobs::ClassicSearch s(index_file); + fs::path query_file{base_dir / "test_1.fastq.gz"}; + auto query_out_filepath = work_dir / "query.out"; + std::ofstream query_out_fh(query_out_filepath.string()); + cobs::process_query(s, 0.80000000000000004, 0, "", query_file.string(), query_out_fh); + query_out_fh.close(); + assert_equals_files_with_paths( + base_dir / "truth.out", + query_out_filepath); +} diff --git a/tests/util.cpp b/tests/util.cpp index 046a17c..4c09875 100644 --- a/tests/util.cpp +++ b/tests/util.cpp @@ -50,13 +50,13 @@ TEST(util, kmer_canonicalize) { // one kmer already canonical but containing invalid letters test_kmer("AGGAAAGTCTTTTACGCTGGGXXXAGAGTGA", - "AGGAAAGTCTTTTACGCTGGG\0\0\0AGAGTGA", false); + "AGGAAAGTCTTTTACGCTGGGAAAAGAGTGA", true); // one k-mer needing flipping containing invalid letters test_kmer("TGGAAAGTCTTTTACGCTGGGXXXAGAGTGA", - "TCACTCT\0\0\0CCCAGCGTAAAAGACTTTCCA", false); + "TCACTCTTTTCCCAGCGTAAAAGACTTTCCA", true); // one kmer containing the invalid letter at the center test_kmer("AAAAAAAAAAAAAAAXTTTTTTTTTTTTTTT", - "AAAAAAAAAAAAAAA\0TTTTTTTTTTTTTTT", false); + "AAAAAAAAAAAAAAAATTTTTTTTTTTTTTT", true); } /******************************************************************************/ From e630069c6dd8f248a1c7d895ff985a5423091683 Mon Sep 17 00:00:00 2001 From: Leandro Ishi Date: Thu, 7 Dec 2023 18:10:12 +0000 Subject: [PATCH 2/4] tests: passing std::string instead of fs::path in cobs::ClassicSearch to make Mac OS builds work --- tests/non_acgt_test.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/non_acgt_test.cpp b/tests/non_acgt_test.cpp index a7ed819..b0186af 100644 --- a/tests/non_acgt_test.cpp +++ b/tests/non_acgt_test.cpp @@ -23,7 +23,7 @@ class non_acgt_test : public ::testing::Test TEST_F(non_acgt_test, non_acgt_test_main_test) { fs::path index_file{base_dir / "index.cobs_classic"}; - cobs::ClassicSearch s(index_file); + cobs::ClassicSearch s(index_file.string()); fs::path query_file{base_dir / "test_1.fastq.gz"}; auto query_out_filepath = work_dir / "query.out"; std::ofstream query_out_fh(query_out_filepath.string()); From 13fad52773f37988929776704a934d722af7d5c3 Mon Sep 17 00:00:00 2001 From: Leandro Ishi Date: Thu, 7 Dec 2023 18:21:28 +0000 Subject: [PATCH 3/4] ci: skipping python bindings when building on Mac OS X with gcc --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 325609c..8c8f33e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -47,7 +47,7 @@ jobs: run: | mkdir build cd build - cmake -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 .. + cmake -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DSKIP_PYTHON .. make make test From 099e45978a669b4cc07986bc4b0becb6f433853d Mon Sep 17 00:00:00 2001 From: Leandro Ishi Date: Thu, 7 Dec 2023 18:23:01 +0000 Subject: [PATCH 4/4] ci: CMake requires key=value even for flags --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 8c8f33e..64f23d7 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -47,7 +47,7 @@ jobs: run: | mkdir build cd build - cmake -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DSKIP_PYTHON .. + cmake -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DSKIP_PYTHON=1 .. make make test