NCBI C++ ToolKit
|
#include <ncbi_pch.hpp>
#include <corelib/ncbi_system.hpp>
#include <objmgr/object_manager.hpp>
#include <objmgr/util/sequence.hpp>
#include <objmgr/util/seq_loc_util.hpp>
#include <serial/iterator.hpp>
#include <objects/biotree/NodeSet.hpp>
#include <objects/blast/Blast4_request.hpp>
#include <objects/blast/Blast4_request_body.hpp>
#include <objects/blast/Blast4_queue_search_reques.hpp>
#include <objects/blast/Blast4_queries.hpp>
#include <objects/blast/Blas_get_searc_resul_reply.hpp>
#include <objects/scoremat/PssmWithParameters.hpp>
#include <objects/scoremat/Pssm.hpp>
#include <algo/cobalt/cobalt.hpp>
#include <algo/cobalt/options.hpp>
#include "cobalt_test_util.hpp"
#include <unordered_set>
#include <corelib/test_boost.hpp>
#include <common/test_assert.h>
Go to the source code of this file.
Go to the SVN repository for this file.
Classes | |
struct | SHit |
Representation of a hit for computing constraints. More... | |
class | CMultiAlignerTest |
Test class for accessing CMultiAligner private attributes and methods. More... | |
class | CMultiAlignerFixture |
Fixture class initialized for each multialigner test. More... | |
Macros | |
#define | NCBI_BOOST_NO_AUTO_TEST_MAIN |
#define | STATIC_ARRAY_SIZE(array) (sizeof(array)/sizeof(*array)) |
Calculate the size of a static array. More... | |
Functions | |
USING_SCOPE (cobalt) | |
USING_SCOPE (objects) | |
static void | s_TestQueriesAsSeq_locs (const vector< CRef< CSeq_loc > > &seqlocs, CRef< CScope > scope) |
static void | s_TestQueriesAsBioseqs (const vector< CRef< CBioseq > > &bioseqs) |
static void | s_MakeBioseqs (const vector< CRef< CSeq_loc > > &seqlocs, CRef< CScope > scope, vector< CRef< CBioseq > > &bioseqs) |
NCBITEST_AUTO_INIT () | |
NCBITEST_AUTO_FINI () | |
BOOST_AUTO_TEST_CASE (TestSetQueries) | |
BOOST_AUTO_TEST_CASE (TestBadQueries) | |
BOOST_AUTO_TEST_CASE (TestBadUserConstraints) | |
BOOST_AUTO_TEST_CASE (TestNoResults) | |
static bool | s_Interrupt (CMultiAligner::SProgress *progress) |
BOOST_AUTO_TEST_CASE (TestInterrupt) | |
static void | s_TestTree (vector< bool > &queries, const TPhyTreeNode *node) |
static void | s_TestResultTree (int num_queries, const TPhyTreeNode *tree) |
static void | s_TestResultTreeContainer (int num_queries, const CBioTreeContainer &btc) |
static void | s_TestResultClusters (int num_queries, const CClusterer::TClusters &clusters, const CMultiAlignerOptions::TConstraints &constraints) |
static void | s_TestResultAlignment (const vector< CRef< CSeq_loc > > &queries, const CRef< CSeq_align > &seqalign, const vector< CSequence > &seqs, CRef< CScope > scope, const string &aln_ref="") |
static void | s_TestResults (CMultiAligner &aligner, const string &ref_aln="") |
BOOST_AUTO_TEST_CASE (TestResultsForDefaultOpts) | |
BOOST_AUTO_TEST_CASE (TestResultsForZeroClusterDiam) | |
BOOST_AUTO_TEST_CASE (TestResultsForMaxClusterDiam) | |
BOOST_AUTO_TEST_CASE (TestResultsForNoClusters) | |
BOOST_AUTO_TEST_CASE (TestResultsForClustersAndUserConstraints) | |
BOOST_AUTO_TEST_CASE (TestTwoSequences) | |
BOOST_AUTO_TEST_CASE (TestLargeAlignment) | |
void | s_TestAlignmentFromMSAs (CRef< CSeq_align > result, CRef< CSeq_align > in_first, CRef< CSeq_align > in_second) |
BOOST_AUTO_TEST_CASE (TestAlignMSAs) | |
BOOST_AUTO_TEST_CASE (TestAlignMSAWithSequence) | |
BOOST_AUTO_TEST_CASE (TestAlignMSAsWithRepresentatives) | |
BOOST_AUTO_TEST_CASE (TestAlignMSAsWithWrongRepresentatives) | |
BOOST_AUTO_TEST_CASE (TestSetPrecomputedDomainHitsWithQueriesAsBioseqset) | |
BOOST_AUTO_TEST_CASE (TestSetPrecomputedDomainHitsWithQueriesAsSeqLocs) | |
BOOST_AUTO_TEST_CASE (TestSetPrecomputedDomainHitsWithNoMatchingQueries) | |
BOOST_AUTO_TEST_CASE (TestSetPrecomputedDomainHitsAboveEThresh) | |
BOOST_AUTO_TEST_CASE (TestAlignSequencesWithPrecomputedDomainHits) | |
BOOST_AUTO_TEST_CASE (TestAlignMSAsWithPrecomputedDomainHits) | |
BOOST_AUTO_TEST_CASE (TestPrecomputedDomainSubjectNotInDatabase) | |
BOOST_AUTO_TEST_CASE (TestSetDomainHitsWithUnsupportedQueries) | |
Variables | |
USING_NCBI_SCOPE | |
#define NCBI_BOOST_NO_AUTO_TEST_MAIN |
Definition at line 71 of file cobalt_unit_test.cpp.
Calculate the size of a static array.
Definition at line 81 of file cobalt_unit_test.cpp.
BOOST_AUTO_TEST_CASE | ( | TestAlignMSAs | ) |
Definition at line 1106 of file cobalt_unit_test.cpp.
References m_Scope, and s_TestAlignmentFromMSAs().
BOOST_AUTO_TEST_CASE | ( | TestAlignMSAsWithPrecomputedDomainHits | ) |
Definition at line 1584 of file cobalt_unit_test.cpp.
References set< Key, Compare >::insert(), m_Scope, and s_TestAlignmentFromMSAs().
BOOST_AUTO_TEST_CASE | ( | TestAlignMSAsWithRepresentatives | ) |
Definition at line 1144 of file cobalt_unit_test.cpp.
References set< Key, Compare >::insert(), m_Scope, and s_TestAlignmentFromMSAs().
BOOST_AUTO_TEST_CASE | ( | TestAlignMSAsWithWrongRepresentatives | ) |
Definition at line 1161 of file cobalt_unit_test.cpp.
References set< Key, Compare >::clear(), set< Key, Compare >::insert(), and m_Scope.
BOOST_AUTO_TEST_CASE | ( | TestAlignMSAWithSequence | ) |
Definition at line 1119 of file cobalt_unit_test.cpp.
References CSeq_align_Base::eType_global, m_Scope, s_TestAlignmentFromMSAs(), CDense_seg_Base::SetDim(), CSeq_align_Base::SetDim(), CDense_seg_Base::SetIds(), CDense_seg_Base::SetLens(), CDense_seg_Base::SetNumseg(), CSeq_align_Base::SetSegs(), CDense_seg_Base::SetStarts(), CSeq_align_Base::SetType(), and CSeqVector::size().
BOOST_AUTO_TEST_CASE | ( | TestAlignSequencesWithPrecomputedDomainHits | ) |
Definition at line 1561 of file cobalt_unit_test.cpp.
References m_Scope, and s_TestResults().
BOOST_AUTO_TEST_CASE | ( | TestBadQueries | ) |
Definition at line 458 of file cobalt_unit_test.cpp.
References CObjectManager::GetInstance(), m_Scope, ReadFastaQueries(), s_MakeBioseqs(), and CMultiAligner::SetQueries().
BOOST_AUTO_TEST_CASE | ( | TestBadUserConstraints | ) |
Definition at line 507 of file cobalt_unit_test.cpp.
References GetLength(), CRef< C, Locker >::GetNonNullPointer(), int, m_Scope, and s_MakeBioseqs().
BOOST_AUTO_TEST_CASE | ( | TestInterrupt | ) |
Definition at line 575 of file cobalt_unit_test.cpp.
References CMultiAligner::eInterrupt, m_Scope, and s_Interrupt().
BOOST_AUTO_TEST_CASE | ( | TestLargeAlignment | ) |
Definition at line 1005 of file cobalt_unit_test.cpp.
References CMultiAligner::eOutOfMemory, CMultiAligner::eSuccess, CObjectManager::GetInstance(), ReadFastaQueries(), CMultiAligner::Run(), s_TestResults(), and CMultiAligner::SetQueries().
BOOST_AUTO_TEST_CASE | ( | TestNoResults | ) |
Definition at line 562 of file cobalt_unit_test.cpp.
BOOST_AUTO_TEST_CASE | ( | TestPrecomputedDomainSubjectNotInDatabase | ) |
Definition at line 1616 of file cobalt_unit_test.cpp.
References CSeq_id::AsFastaString(), CSeq_align_set_Base::Get(), CBlast4_get_search_results_reply_Base::GetAlignments(), CBlast4_archive_Base::GetResults(), CSeq_align::GetSeq_id(), m_Scope, MSerial_AsnText, and CMultiAlignerTest::SetDomainHits().
BOOST_AUTO_TEST_CASE | ( | TestResultsForClustersAndUserConstraints | ) |
Definition at line 942 of file cobalt_unit_test.cpp.
References CMultiAligner::eSuccess, m_Scope, and s_TestResults().
BOOST_AUTO_TEST_CASE | ( | TestResultsForDefaultOpts | ) |
Definition at line 867 of file cobalt_unit_test.cpp.
References CMultiAligner::eSuccess, m_Scope, and s_TestResults().
BOOST_AUTO_TEST_CASE | ( | TestResultsForMaxClusterDiam | ) |
Definition at line 903 of file cobalt_unit_test.cpp.
References CMultiAligner::eSuccess, m_Scope, and s_TestResults().
BOOST_AUTO_TEST_CASE | ( | TestResultsForNoClusters | ) |
Definition at line 921 of file cobalt_unit_test.cpp.
References CMultiAligner::eSuccess, CMultiAlignerOptions::fNoQueryClusters, CMultiAlignerOptions::fNoRpsBlast, m_Scope, and s_TestResults().
BOOST_AUTO_TEST_CASE | ( | TestResultsForZeroClusterDiam | ) |
Definition at line 883 of file cobalt_unit_test.cpp.
References CMultiAligner::eSuccess, m_Scope, and s_TestResults().
BOOST_AUTO_TEST_CASE | ( | TestSetDomainHitsWithUnsupportedQueries | ) |
Definition at line 1644 of file cobalt_unit_test.cpp.
References m_Scope, CMultiAlignerTest::SetDomainHits(), CPssm_Base::SetNumColumns(), CPssm_Base::SetNumRows(), and CMultiAlignerFixture::x_ReadRpsArchive().
BOOST_AUTO_TEST_CASE | ( | TestSetPrecomputedDomainHitsAboveEThresh | ) |
Definition at line 1513 of file cobalt_unit_test.cpp.
References CMultiAlignerTest::GetDomainHits(), CMultiAlignerTest::GetIsDomainSearched(), m_Scope, CMultiAlignerTest::SetDomainHits(), CSeq_loc::SetWhole(), and CHitList::Size().
BOOST_AUTO_TEST_CASE | ( | TestSetPrecomputedDomainHitsWithNoMatchingQueries | ) |
Definition at line 1490 of file cobalt_unit_test.cpp.
References CMultiAlignerTest::GetDomainHits(), CMultiAlignerTest::GetIsDomainSearched(), m_Scope, CMultiAlignerTest::SetDomainHits(), and CHitList::Size().
BOOST_AUTO_TEST_CASE | ( | TestSetPrecomputedDomainHitsWithQueriesAsBioseqset | ) |
Definition at line 1182 of file cobalt_unit_test.cpp.
References CMultiAlignerTest::CompareDomainHits(), fabs, CMultiAlignerTest::GetIsDomainSearched(), i, CMultiAlignerTest::InterruptAfterRpsBlastSearch(), ITERATE, m_Scope, MSerial_AsnText, and CMultiAlignerTest::SetDomainHits().
BOOST_AUTO_TEST_CASE | ( | TestSetPrecomputedDomainHitsWithQueriesAsSeqLocs | ) |
Definition at line 1338 of file cobalt_unit_test.cpp.
References CMultiAlignerTest::CompareDomainHits(), fabs, CMultiAlignerTest::GetIsDomainSearched(), i, CMultiAlignerTest::InterruptAfterRpsBlastSearch(), ITERATE, m_Scope, and CMultiAlignerTest::SetDomainHits().
BOOST_AUTO_TEST_CASE | ( | TestSetQueries | ) |
Definition at line 428 of file cobalt_unit_test.cpp.
References CScope::GetBioseqHandle(), CSeq_loc::GetId(), GetLength(), CBioseq_Handle::GetSeqId(), m_Scope, CSeq_id::Match(), s_MakeBioseqs(), s_TestQueriesAsBioseqs(), s_TestQueriesAsSeq_locs(), and CSeq_loc::SetInt().
BOOST_AUTO_TEST_CASE | ( | TestTwoSequences | ) |
Definition at line 979 of file cobalt_unit_test.cpp.
References CMultiAligner::eSuccess, m_Scope, and s_TestResults().
NCBITEST_AUTO_FINI | ( | ) |
Definition at line 419 of file cobalt_unit_test.cpp.
References CMultiAlignerFixture::Finalize().
NCBITEST_AUTO_INIT | ( | ) |
Definition at line 414 of file cobalt_unit_test.cpp.
References CMultiAlignerFixture::Initialize().
|
static |
Definition at line 570 of file cobalt_unit_test.cpp.
Referenced by BOOST_AUTO_TEST_CASE().
|
static |
Definition at line 399 of file cobalt_unit_test.cpp.
References CScope::GetBioseqHandle(), CBioseq_Handle::GetCompleteBioseq(), CConstRef< C, Locker >::GetNonNullPointer(), and ITERATE.
Referenced by BOOST_AUTO_TEST_CASE().
void s_TestAlignmentFromMSAs | ( | CRef< CSeq_align > | result, |
CRef< CSeq_align > | in_first, | ||
CRef< CSeq_align > | in_second | ||
) |
Definition at line 1028 of file cobalt_unit_test.cpp.
References CDense_seg::Compact(), CSeq_align_Base::eType_global, f, CSeq_align_Base::C_Segs::GetDenseg(), CDense_seg_Base::GetDim(), CDense_seg_Base::GetIds(), CDense_seg_Base::GetLens(), CSeq_align_Base::GetSegs(), CDense_seg_Base::GetStarts(), i, int, CSeq_align_Base::C_Segs::IsDenseg(), CDense_seg::RemovePureGapSegs(), result, and ncbi::grid::netcache::search::fields::size.
Referenced by BOOST_AUTO_TEST_CASE().
Definition at line 386 of file cobalt_unit_test.cpp.
References GetId(), CMultiAligner::GetQueries(), i, and CMultiAligner::SetQueries().
Referenced by BOOST_AUTO_TEST_CASE().
|
static |
Definition at line 371 of file cobalt_unit_test.cpp.
References GetId(), CMultiAligner::GetQueries(), i, and CMultiAligner::SetQueries().
Referenced by BOOST_AUTO_TEST_CASE().
|
static |
Definition at line 776 of file cobalt_unit_test.cpp.
References CSeq_align_Base::eType_global, CSeq_align_Base::C_Segs::GetDenseg(), CSeq_align_Base::GetDim(), GetId(), GetLength(), CDense_seg_Base::GetLens(), CRef< C, Locker >::GetPointer(), CSeq_align_Base::GetSegs(), CSeq_align::GetSeq_id(), CDense_seg_Base::GetStarts(), CSeq_align_Base::GetType(), i, int, ITERATE, CSequence::kGapChar, len, and MSerial_AsnText.
Referenced by s_TestResults().
|
static |
Definition at line 700 of file cobalt_unit_test.cpp.
Referenced by s_TestResults().
|
static |
Definition at line 850 of file cobalt_unit_test.cpp.
References CMultiAligner::GetOptions(), CMultiAligner::GetQueries(), CMultiAligner::GetQueryClusters(), CMultiAligner::GetResults(), CMultiAligner::GetScope(), CMultiAligner::GetSeqResults(), CMultiAligner::GetTree(), CMultiAligner::GetTreeContainer(), CMultiAlignerOptions::GetUserConstraints(), int, s_TestResultAlignment(), s_TestResultClusters(), s_TestResultTree(), and s_TestResultTreeContainer().
Referenced by BOOST_AUTO_TEST_CASE().
|
static |
Definition at line 623 of file cobalt_unit_test.cpp.
References ITERATE, and s_TestTree().
Referenced by s_TestResults().
|
static |
Definition at line 638 of file cobalt_unit_test.cpp.
References CFeatureDictSet_Base::Get(), CNodeSet_Base::Get(), CBioTreeContainer_Base::GetFdict(), CBioTreeContainer_Base::GetNodes(), isdigit(), ITERATE, label, and NStr::StringToInt().
Referenced by s_TestResults().
|
static |
Definition at line 585 of file cobalt_unit_test.cpp.
References CTreeNode< TValue, TKeyGetterP >::GetParent(), CTreeNode< TValue, TKeyGetterP >::GetValue(), isdigit(), CTreeNode< TValue, TKeyGetterP >::IsLeaf(), label, NStr::StringToInt(), CTreeNode< TValue, TKeyGetterP >::SubNodeBegin(), and CTreeNode< TValue, TKeyGetterP >::SubNodeEnd().
Referenced by s_TestResultTree().
USING_SCOPE | ( | cobalt | ) |
USING_SCOPE | ( | objects | ) |
USING_NCBI_SCOPE |
Definition at line 83 of file cobalt_unit_test.cpp.