00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include <getopt.h>
00025 #include "Generic.h"
00026 #include "CigarRollerTest.h"
00027
00028
00029
00030
00031
00032 int CigarRollerTest::test(void)
00033 {
00034 int failures = 0, testNum = 0;
00035 Cigar::CigarOperator op;
00036
00037
00038
00039
00040 check(failures, ++testNum, "foundInReference(none)", false,
00041 Cigar::foundInReference(Cigar::none));
00042 check(failures, ++testNum, "foundInReference(match)", true,
00043 Cigar::foundInReference(Cigar::match));
00044 check(failures, ++testNum, "foundInReference(mismatch)", true,
00045 Cigar::foundInReference(Cigar::mismatch));
00046 check(failures, ++testNum, "foundInReference(insert)", false,
00047 Cigar::foundInReference(Cigar::insert));
00048 check(failures, ++testNum, "foundInReference(del)", true,
00049 Cigar::foundInReference(Cigar::del));
00050 check(failures, ++testNum, "foundInReference(skip)", true,
00051 Cigar::foundInReference(Cigar::skip));
00052 check(failures, ++testNum, "foundInReference(softClip)", false,
00053 Cigar::foundInReference(Cigar::softClip));
00054 check(failures, ++testNum, "foundInReference(hardClip)", false,
00055 Cigar::foundInReference(Cigar::hardClip));
00056 check(failures, ++testNum, "foundInReference(pad)", false,
00057 Cigar::foundInReference(Cigar::pad));
00058
00059 check(failures, ++testNum,
00060 "foundInReference('?')", false, Cigar::foundInReference('?'));
00061 check(failures, ++testNum,
00062 "foundInReference('z')", false, Cigar::foundInReference('z'));
00063 check(failures, ++testNum,
00064 "foundInReference('M')", true, Cigar::foundInReference('M'));
00065 check(failures, ++testNum,
00066 "foundInReference('X')", true, Cigar::foundInReference('X'));
00067 check(failures, ++testNum,
00068 "foundInReference('=')", true, Cigar::foundInReference('='));
00069 check(failures, ++testNum,
00070 "foundInReference('I')", false, Cigar::foundInReference('I'));
00071 check(failures, ++testNum,
00072 "foundInReference('D')", true, Cigar::foundInReference('D'));
00073 check(failures, ++testNum,
00074 "foundInReference('N')", true, Cigar::foundInReference('N'));
00075 check(failures, ++testNum,
00076 "foundInReference('S')", false, Cigar::foundInReference('S'));
00077 check(failures, ++testNum,
00078 "foundInReference('H')", false, Cigar::foundInReference('H'));
00079 check(failures, ++testNum,
00080 "foundInReference('P')", false, Cigar::foundInReference('P'));
00081
00082 op.count = 3;
00083 op.operation = Cigar::none;
00084 check(failures, ++testNum, "foundInReference(none)", false,
00085 Cigar::foundInReference(op));
00086 op.operation = Cigar::match;
00087 check(failures, ++testNum, "foundInReference(match)", true,
00088 Cigar::foundInReference(op));
00089 op.operation = Cigar::mismatch;
00090 check(failures, ++testNum, "foundInReference(mismatch)", true,
00091 Cigar::foundInReference(op));
00092 op.operation = Cigar::insert;
00093 check(failures, ++testNum, "foundInReference(insert)", false,
00094 Cigar::foundInReference(op));
00095 op.operation = Cigar::del;
00096 check(failures, ++testNum, "foundInReference(del)", true,
00097 Cigar::foundInReference(op));
00098 op.operation = Cigar::skip;
00099 check(failures, ++testNum, "foundInReference(skip)", true,
00100 Cigar::foundInReference(op));
00101 op.operation = Cigar::softClip;
00102 check(failures, ++testNum, "foundInReference(softClip)", false,
00103 Cigar::foundInReference(op));
00104 op.operation = Cigar::hardClip;
00105 check(failures, ++testNum, "foundInReference(hardClip)", false,
00106 Cigar::foundInReference(op));
00107 op.operation = Cigar::pad;
00108 check(failures, ++testNum, "foundInReference(pad)", false,
00109 Cigar::foundInReference(op));
00110
00111
00112
00113 check(failures, ++testNum, "foundInQuery(none)", false,
00114 Cigar::foundInQuery(Cigar::none));
00115 check(failures, ++testNum, "foundInQuery(match)", true,
00116 Cigar::foundInQuery(Cigar::match));
00117 check(failures, ++testNum, "foundInQuery(mismatch)", true,
00118 Cigar::foundInQuery(Cigar::mismatch));
00119 check(failures, ++testNum, "foundInQuery(insert)", true,
00120 Cigar::foundInQuery(Cigar::insert));
00121 check(failures, ++testNum, "foundInQuery(del)", false,
00122 Cigar::foundInQuery(Cigar::del));
00123 check(failures, ++testNum, "foundInQuery(skip)", false,
00124 Cigar::foundInQuery(Cigar::skip));
00125 check(failures, ++testNum, "foundInQuery(softClip)", true,
00126 Cigar::foundInQuery(Cigar::softClip));
00127 check(failures, ++testNum, "foundInQuery(hardClip)", false,
00128 Cigar::foundInQuery(Cigar::hardClip));
00129 check(failures, ++testNum, "foundInQuery(pad)", false,
00130 Cigar::foundInQuery(Cigar::pad));
00131
00132 check(failures, ++testNum,
00133 "foundInQuery('?')", false, Cigar::foundInQuery('?'));
00134 check(failures, ++testNum,
00135 "foundInQuery('z')", false, Cigar::foundInQuery('z'));
00136 check(failures, ++testNum,
00137 "foundInQuery('M')", true, Cigar::foundInQuery('M'));
00138 check(failures, ++testNum,
00139 "foundInQuery('X')", true, Cigar::foundInQuery('X'));
00140 check(failures, ++testNum,
00141 "foundInQuery('=')", true, Cigar::foundInQuery('='));
00142 check(failures, ++testNum,
00143 "foundInQuery('I')", true, Cigar::foundInQuery('I'));
00144 check(failures, ++testNum,
00145 "foundInQuery('D')", false, Cigar::foundInQuery('D'));
00146 check(failures, ++testNum,
00147 "foundInQuery('N')", false, Cigar::foundInQuery('N'));
00148 check(failures, ++testNum,
00149 "foundInQuery('S')", true, Cigar::foundInQuery('S'));
00150 check(failures, ++testNum,
00151 "foundInQuery('H')", false, Cigar::foundInQuery('H'));
00152 check(failures, ++testNum,
00153 "foundInQuery('P')", false, Cigar::foundInQuery('P'));
00154
00155 op.count = 3;
00156 op.operation = Cigar::none;
00157 check(failures, ++testNum, "foundInQuery(none)", false,
00158 Cigar::foundInQuery(op));
00159 op.operation = Cigar::match;
00160 check(failures, ++testNum, "foundInQuery(match)", true,
00161 Cigar::foundInQuery(op));
00162 op.operation = Cigar::mismatch;
00163 check(failures, ++testNum, "foundInQuery(mismatch)", true,
00164 Cigar::foundInQuery(op));
00165 op.operation = Cigar::insert;
00166 check(failures, ++testNum, "foundInQuery(insert)", true,
00167 Cigar::foundInQuery(op));
00168 op.operation = Cigar::del;
00169 check(failures, ++testNum, "foundInQuery(del)", false,
00170 Cigar::foundInQuery(op));
00171 op.operation = Cigar::skip;
00172 check(failures, ++testNum, "foundInQuery(skip)", false,
00173 Cigar::foundInQuery(op));
00174 op.operation = Cigar::softClip;
00175 check(failures, ++testNum, "foundInQuery(softClip)", true,
00176 Cigar::foundInQuery(op));
00177 op.operation = Cigar::hardClip;
00178 check(failures, ++testNum, "foundInQuery(hardClip)", false,
00179 Cigar::foundInQuery(op));
00180 op.operation = Cigar::pad;
00181 check(failures, ++testNum, "foundInQuery(pad)", false,
00182 Cigar::foundInQuery(op));
00183
00184
00185
00186
00187 check(failures, ++testNum, "isClip(none)", false,
00188 Cigar::isClip(Cigar::none));
00189 check(failures, ++testNum, "isClip(match)", false,
00190 Cigar::isClip(Cigar::match));
00191 check(failures, ++testNum, "isClip(mismatch)", false,
00192 Cigar::isClip(Cigar::mismatch));
00193 check(failures, ++testNum, "isClip(insert)", false,
00194 Cigar::isClip(Cigar::insert));
00195 check(failures, ++testNum, "isClip(del)", false,
00196 Cigar::isClip(Cigar::del));
00197 check(failures, ++testNum, "isClip(skip)", false,
00198 Cigar::isClip(Cigar::skip));
00199 check(failures, ++testNum, "isClip(softClip)", true,
00200 Cigar::isClip(Cigar::softClip));
00201 check(failures, ++testNum, "isClip(hardClip)", true,
00202 Cigar::isClip(Cigar::hardClip));
00203 check(failures, ++testNum, "isClip(pad)", false,
00204 Cigar::isClip(Cigar::pad));
00205
00206 check(failures, ++testNum,
00207 "isClip('?')", false, Cigar::isClip('?'));
00208 check(failures, ++testNum,
00209 "isClip('z')", false, Cigar::isClip('z'));
00210 check(failures, ++testNum,
00211 "isClip('M')", false, Cigar::isClip('M'));
00212 check(failures, ++testNum,
00213 "isClip('X')", false, Cigar::isClip('X'));
00214 check(failures, ++testNum,
00215 "isClip('=')", false, Cigar::isClip('='));
00216 check(failures, ++testNum,
00217 "isClip('I')", false, Cigar::isClip('I'));
00218 check(failures, ++testNum,
00219 "isClip('D')", false, Cigar::isClip('D'));
00220 check(failures, ++testNum,
00221 "isClip('N')", false, Cigar::isClip('N'));
00222 check(failures, ++testNum,
00223 "isClip('S')", true, Cigar::isClip('S'));
00224 check(failures, ++testNum,
00225 "isClip('H')", true, Cigar::isClip('H'));
00226 check(failures, ++testNum,
00227 "isClip('P')", false, Cigar::isClip('P'));
00228
00229 op.count = 3;
00230 op.operation = Cigar::none;
00231 check(failures, ++testNum, "isClip(none)", false,
00232 Cigar::isClip(op));
00233 op.operation = Cigar::match;
00234 check(failures, ++testNum, "isClip(match)", false,
00235 Cigar::isClip(op));
00236 op.operation = Cigar::mismatch;
00237 check(failures, ++testNum, "isClip(mismatch)", false,
00238 Cigar::isClip(op));
00239 op.operation = Cigar::insert;
00240 check(failures, ++testNum, "isClip(insert)", false,
00241 Cigar::isClip(op));
00242 op.operation = Cigar::del;
00243 check(failures, ++testNum, "isClip(del)", false,
00244 Cigar::isClip(op));
00245 op.operation = Cigar::skip;
00246 check(failures, ++testNum, "isClip(skip)", false,
00247 Cigar::isClip(op));
00248 op.operation = Cigar::softClip;
00249 check(failures, ++testNum, "isClip(softClip)", true,
00250 Cigar::isClip(op));
00251 op.operation = Cigar::hardClip;
00252 check(failures, ++testNum, "isClip(hardClip)", true,
00253 Cigar::isClip(op));
00254 op.operation = Cigar::pad;
00255 check(failures, ++testNum, "isClip(pad)", false,
00256 Cigar::isClip(op));
00257
00258
00259
00260
00261
00262
00263
00264
00265
00266 CigarRoller cigar;
00267
00268
00269 String str;
00270 std::string result;
00271
00272 cigar.getCigarString(str);
00273 result = str.c_str();
00274
00275
00276 check(failures, ++testNum, "constructor", result, "");
00277
00278 op.operation = CigarRoller::match;
00279 op.count = 10;
00280
00281 cigar += op;
00282
00283 op.count=5;
00284
00285 cigar += op;
00286
00287 op.count=5; op.operation = CigarRoller::mismatch;
00288
00289 cigar += op;
00290
00291 op.count=5; op.operation = CigarRoller::insert;
00292
00293 cigar += op;
00294
00295 op.count=5; op.operation = CigarRoller::insert;
00296
00297 cigar += op;
00298
00299 op.count=5; op.operation = CigarRoller::del;
00300
00301 cigar += op;
00302
00303 op.count=5; op.operation = CigarRoller::mismatch;
00304
00305 cigar += op;
00306
00307 op.count=5; op.operation = CigarRoller::match;
00308
00309 cigar += op;
00310
00311 op.count=5; op.operation = CigarRoller::skip;
00312
00313 cigar += op;
00314
00315 op.count=5; op.operation = CigarRoller::match;
00316
00317 cigar += op;
00318
00319 op.count=2; op.operation = CigarRoller::pad;
00320
00321 cigar += op;
00322
00323 op.count=3; op.operation = CigarRoller::match;
00324
00325 cigar += op;
00326
00327 cigar.getCigarString(str);
00328 result = str.c_str();
00329
00330
00331 check(failures, ++testNum, "match combining", "20M10I5D10M5N5M2P3M", result);
00332 check(failures, ++testNum, "length check", 8, cigar.size());
00333
00334
00335
00336
00337
00338
00339
00340 check(failures, ++testNum, "getRefOffset(20)", -1, cigar.getRefOffset(20));
00341 check(failures, ++testNum, "getRefOffset(30)", 25, cigar.getRefOffset(30));
00342 check(failures, ++testNum, "getRefOffset(46)", 46, cigar.getRefOffset(46));
00343 check(failures, ++testNum, "getRefOffset(0)", 0, cigar.getRefOffset(0));
00344 check(failures, ++testNum, "getRefPosition(20, 5)", -1, cigar.getRefPosition(20, 5));
00345 check(failures, ++testNum, "getRefPosition(30, 5)", 30, cigar.getRefPosition(30, 5));
00346 check(failures, ++testNum, "getRefPosition(46, 5)", 51, cigar.getRefPosition(46, 5));
00347 check(failures, ++testNum, "getRefPosition(0, 5)", 5, cigar.getRefPosition(0, 5));
00348 check(failures, ++testNum, "getQueryIndex(20)", CigarRoller::INDEX_NA, cigar.getQueryIndex(20));
00349 check(failures, ++testNum, "getQueryIndex(30)", 35, cigar.getQueryIndex(30));
00350 check(failures, ++testNum, "getQueryIndex(35)", Cigar::INDEX_NA, cigar.getQueryIndex(35));
00351 check(failures, ++testNum, "getQueryIndex(46)", 46, cigar.getQueryIndex(46));
00352 check(failures, ++testNum, "getQueryIndex(0)", 0, cigar.getQueryIndex(0));
00353 check(failures, ++testNum, "getQueryIndex(25, 5)", -1, cigar.getQueryIndex(20));
00354 check(failures, ++testNum, "getQueryIndex(35, 5)", 35, cigar.getQueryIndex(30));
00355 check(failures, ++testNum, "getQueryIndex(40, 5)", -1, cigar.getQueryIndex(35));
00356 check(failures, ++testNum, "getQueryIndex(51, 5)", 46, cigar.getQueryIndex(46));
00357 check(failures, ++testNum, "getQueryIndex(5, 5)", 0, cigar.getQueryIndex(0));
00358
00359 int i = 0;
00360 int queryIndex = 0;
00361 int refOffset = 0;
00362
00363 for(i = 0; i < 20; i++)
00364 {
00365 check(failures, ++testNum, "getRefOffset(queryIndex)", refOffset, cigar.getRefOffset(queryIndex));
00366 check(failures, ++testNum, "getQueryIndex(refOffset)", queryIndex, cigar.getQueryIndex(refOffset));
00367 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", refOffset + 5, cigar.getRefPosition(queryIndex, 5));
00368 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", queryIndex, cigar.getQueryIndex(refOffset + 5, 5));
00369 ++queryIndex;
00370 ++refOffset;
00371 }
00372
00373 for(i = 0; i < 10; i++)
00374 {
00375 check(failures, ++testNum, "getRefOffset(queryIndex)", -1, cigar.getRefOffset(queryIndex));
00376 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", -1, cigar.getRefPosition(queryIndex, 5));
00377 ++queryIndex;
00378 }
00379
00380 for(i = 0; i < 5; i++)
00381 {
00382 check(failures, ++testNum, "getQueryIndex(refOffset)", -1, cigar.getQueryIndex(refOffset));
00383 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", -1, cigar.getQueryIndex(refOffset + 5, 5));
00384 refOffset++;
00385 }
00386
00387 for(i = 0; i < 10; i++)
00388 {
00389 check(failures, ++testNum, "getRefOffset(queryIndex)", refOffset, cigar.getRefOffset(queryIndex));
00390 check(failures, ++testNum, "getQueryIndex(refOffset)", queryIndex, cigar.getQueryIndex(refOffset));
00391 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", refOffset + 5, cigar.getRefPosition(queryIndex, 5));
00392 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", queryIndex, cigar.getQueryIndex(refOffset + 5, 5));
00393 ++queryIndex;
00394 ++refOffset;
00395 }
00396
00397 for(i = 0; i < 5; i++)
00398 {
00399 check(failures, ++testNum, "getQueryIndex(refOffset)", -1, cigar.getQueryIndex(refOffset));
00400 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", -1, cigar.getQueryIndex(refOffset + 5, 5));
00401 refOffset++;
00402 }
00403
00404 for(i = 0; i < 5; i++)
00405 {
00406 check(failures, ++testNum, "getRefOffset(queryIndex)", refOffset, cigar.getRefOffset(queryIndex));
00407 check(failures, ++testNum, "getQueryIndex(refOffset)", queryIndex, cigar.getQueryIndex(refOffset));
00408 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", refOffset + 5, cigar.getRefPosition(queryIndex, 5));
00409 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", queryIndex, cigar.getQueryIndex(refOffset + 5, 5));
00410 ++queryIndex;
00411 ++refOffset;
00412 }
00413
00414
00415 for(i = 0; i < 3; i++)
00416 {
00417 check(failures, ++testNum, "getRefOffset(queryIndex)", refOffset, cigar.getRefOffset(queryIndex));
00418 check(failures, ++testNum, "getQueryIndex(refOffset)", queryIndex, cigar.getQueryIndex(refOffset));
00419 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", refOffset + 5, cigar.getRefPosition(queryIndex, 5));
00420 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", queryIndex, cigar.getQueryIndex(refOffset + 5, 5));
00421 ++queryIndex;
00422 ++refOffset;
00423 }
00424
00425
00426 check(failures, ++testNum, "getRefOffset(queryIndex)", -1, cigar.getRefOffset(queryIndex));
00427 check(failures, ++testNum, "getQueryIndex(refOffset)", -1, cigar.getQueryIndex(refOffset));
00428 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", -1, cigar.getRefPosition(queryIndex, 5));
00429 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", -1, cigar.getQueryIndex(refOffset + 5, 5));
00430 ++queryIndex;
00431 ++refOffset;
00432 check(failures, ++testNum, "getRefOffset(queryIndex)", -1, cigar.getRefOffset(queryIndex));
00433 check(failures, ++testNum, "getQueryIndex(refOffset)", -1, cigar.getQueryIndex(refOffset));
00434 check(failures, ++testNum, "getRefPosition(queryIndex, 5)", -1, cigar.getRefPosition(queryIndex, 5));
00435 check(failures, ++testNum, "getQueryIndex(refPosition, 5)", -1, cigar.getQueryIndex(refOffset + 5, 5));
00436
00437
00438
00439
00440
00441
00442
00443
00444 check(failures, ++testNum, "getNumOverlaps(1, 5, 5)", (uint32_t)0, cigar.getNumOverlaps(1, 5, 5));
00445
00446
00447 check(failures, ++testNum, "getNumOverlaps(53, 101, 5)", (uint32_t)0, cigar.getNumOverlaps(53, 101, 5));
00448
00449
00450 check(failures, ++testNum, "getNumOverlaps(53, 10, 5)", (uint32_t)0, cigar.getNumOverlaps(53, 10, 5));
00451
00452
00453 check(failures, ++testNum, "getNumOverlaps(35, 10, 5)", (uint32_t)0, cigar.getNumOverlaps(35, 10, 5));
00454
00455
00456 check(failures, ++testNum, "getNumOverlaps(35, 1, 5)", (uint32_t)0, cigar.getNumOverlaps(35, 1, 5));
00457
00458
00459 check(failures, ++testNum, "getNumOverlaps(1, 6, 5)", (uint32_t)1, cigar.getNumOverlaps(1, 6, 5));
00460
00461
00462 check(failures, ++testNum, "getNumOverlaps(25, 30, 5)", (uint32_t)0, cigar.getNumOverlaps(25, 30, 5));
00463
00464
00465 check(failures, ++testNum, "getNumOverlaps(24, 30, 5)", (uint32_t)1, cigar.getNumOverlaps(24, 30, 5));
00466
00467
00468 check(failures, ++testNum, "getNumOverlaps(25, 31, 5)", (uint32_t)1, cigar.getNumOverlaps(25, 31, 5));
00469
00470
00471 check(failures, ++testNum, "getNumOverlaps(1, 31, 5)", (uint32_t)21, cigar.getNumOverlaps(1, 31, 5));
00472
00473
00474 check(failures, ++testNum, "getNumOverlaps(1, 101, 5)", (uint32_t)38, cigar.getNumOverlaps(1, 101, 5));
00475
00476
00477 check(failures, ++testNum, "getNumOverlaps(-1, -1, 5)", (uint32_t)38, cigar.getNumOverlaps(-1, -1, 5));
00478
00479
00480 check(failures, ++testNum, "getNumOverlaps(6, 52, 5)", (uint32_t)36, cigar.getNumOverlaps(6, 52, 5));
00481
00482
00483 check(failures, ++testNum, "getNumOverlaps(40, 45, 5)", (uint32_t)0, cigar.getNumOverlaps(40, 45, 5));
00484
00485
00486 check(failures, ++testNum, "getNumOverlaps(-1, 10, 5)", (uint32_t)5, cigar.getNumOverlaps(-1, 10, 5));
00487
00488
00489 check(failures, ++testNum, "getNumOverlaps(50, -1, 5)", (uint32_t)3, cigar.getNumOverlaps(50, -1, 5));
00490
00491
00492
00493 cigar.Set("4M10N4M3I2M4D3M");
00494 String expectedResult = "4M10N4M3I2M4D3M";
00495 String cigarString = "HI";
00496 cigar.getCigarString(cigarString);
00497 check(failures, ++testNum, "getCigarString", expectedResult, cigarString);
00498
00499
00500
00501
00502
00503
00504
00505
00506
00507
00508
00509
00510
00511 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(0, 5)", -1, cigar.getExpandedCigarIndexFromRefPos(0,5));
00512 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(1, 5)", -1, cigar.getExpandedCigarIndexFromRefPos(1,5));
00513 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(2, 5)", -1, cigar.getExpandedCigarIndexFromRefPos(2,5));
00514 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(3, 5)", -1, cigar.getExpandedCigarIndexFromRefPos(3,5));
00515 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(4, 5)", -1, cigar.getExpandedCigarIndexFromRefPos(4,5));
00516 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(5, 5)", 0, cigar.getExpandedCigarIndexFromRefPos(5,5));
00517 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(6, 5)", 1, cigar.getExpandedCigarIndexFromRefPos(6,5));
00518 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(7, 5)", 2, cigar.getExpandedCigarIndexFromRefPos(7,5));
00519 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(8, 5)", 3, cigar.getExpandedCigarIndexFromRefPos(8,5));
00520 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(9, 5)", 4, cigar.getExpandedCigarIndexFromRefPos(9,5));
00521 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(10, 5)", 5, cigar.getExpandedCigarIndexFromRefPos(10,5));
00522 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(11, 5)", 6, cigar.getExpandedCigarIndexFromRefPos(11,5));
00523 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(12, 5)", 7, cigar.getExpandedCigarIndexFromRefPos(12,5));
00524 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(13, 5)", 8, cigar.getExpandedCigarIndexFromRefPos(13,5));
00525 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(14, 5)", 9, cigar.getExpandedCigarIndexFromRefPos(14,5));
00526 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(15, 5)", 10, cigar.getExpandedCigarIndexFromRefPos(15,5));
00527 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(16, 5)", 11, cigar.getExpandedCigarIndexFromRefPos(16,5));
00528 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(17, 5)", 12, cigar.getExpandedCigarIndexFromRefPos(17,5));
00529 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(18, 5)", 13, cigar.getExpandedCigarIndexFromRefPos(18,5));
00530 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(19, 5)", 14, cigar.getExpandedCigarIndexFromRefPos(19,5));
00531 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(20, 5)", 15, cigar.getExpandedCigarIndexFromRefPos(20,5));
00532 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(21, 5)", 16, cigar.getExpandedCigarIndexFromRefPos(21,5));
00533 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(22, 5)", 17, cigar.getExpandedCigarIndexFromRefPos(22,5));
00534 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(23, 5)", 21, cigar.getExpandedCigarIndexFromRefPos(23,5));
00535 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(24, 5)", 22, cigar.getExpandedCigarIndexFromRefPos(24,5));
00536 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(25, 5)", 23, cigar.getExpandedCigarIndexFromRefPos(25,5));
00537 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(26, 5)", 24, cigar.getExpandedCigarIndexFromRefPos(26,5));
00538 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(27, 5)", 25, cigar.getExpandedCigarIndexFromRefPos(27,5));
00539 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(28, 5)", 26, cigar.getExpandedCigarIndexFromRefPos(28,5));
00540 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(29, 5)", 27, cigar.getExpandedCigarIndexFromRefPos(29,5));
00541 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(30, 5)", 28, cigar.getExpandedCigarIndexFromRefPos(30,5));
00542 check(failures, ++testNum, "getExpandedCigarIndexFromRefPos(31, 5)", 29, cigar.getExpandedCigarIndexFromRefPos(31,5));
00543
00544
00545 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(0)", 0, cigar.getExpandedCigarIndexFromRefOffset(0));
00546 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(1)", 1, cigar.getExpandedCigarIndexFromRefOffset(1));
00547 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(2)", 2, cigar.getExpandedCigarIndexFromRefOffset(2));
00548 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(3)", 3, cigar.getExpandedCigarIndexFromRefOffset(3));
00549 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(4)", 4, cigar.getExpandedCigarIndexFromRefOffset(4));
00550 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(5)", 5, cigar.getExpandedCigarIndexFromRefOffset(5));
00551 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(6)", 6, cigar.getExpandedCigarIndexFromRefOffset(6));
00552 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(7)", 7, cigar.getExpandedCigarIndexFromRefOffset(7));
00553 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(8)", 8, cigar.getExpandedCigarIndexFromRefOffset(8));
00554 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(9)", 9, cigar.getExpandedCigarIndexFromRefOffset(9));
00555 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(10)", 10, cigar.getExpandedCigarIndexFromRefOffset(10));
00556 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(11)", 11, cigar.getExpandedCigarIndexFromRefOffset(11));
00557 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(12)", 12, cigar.getExpandedCigarIndexFromRefOffset(12));
00558 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(13)", 13, cigar.getExpandedCigarIndexFromRefOffset(13));
00559 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(14)", 14, cigar.getExpandedCigarIndexFromRefOffset(14));
00560 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(15)", 15, cigar.getExpandedCigarIndexFromRefOffset(15));
00561 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(16)", 16, cigar.getExpandedCigarIndexFromRefOffset(16));
00562 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(17)", 17, cigar.getExpandedCigarIndexFromRefOffset(17));
00563 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(18)", 21, cigar.getExpandedCigarIndexFromRefOffset(18));
00564 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(19)", 22, cigar.getExpandedCigarIndexFromRefOffset(19));
00565 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(20)", 23, cigar.getExpandedCigarIndexFromRefOffset(20));
00566 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(21)", 24, cigar.getExpandedCigarIndexFromRefOffset(21));
00567 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(22)", 25, cigar.getExpandedCigarIndexFromRefOffset(22));
00568 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(23)", 26, cigar.getExpandedCigarIndexFromRefOffset(23));
00569 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(24)", 27, cigar.getExpandedCigarIndexFromRefOffset(24));
00570 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(25)", 28, cigar.getExpandedCigarIndexFromRefOffset(25));
00571 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(26)", 29, cigar.getExpandedCigarIndexFromRefOffset(26));
00572 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(27)", -1, cigar.getExpandedCigarIndexFromRefOffset(27));
00573 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(28)", -1, cigar.getExpandedCigarIndexFromRefOffset(28));
00574 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(29)", -1, cigar.getExpandedCigarIndexFromRefOffset(29));
00575 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(30)", -1, cigar.getExpandedCigarIndexFromRefOffset(30));
00576 check(failures, ++testNum, "getExpandedCigarIndexFromRefOffset(31)", -1, cigar.getExpandedCigarIndexFromRefOffset(31));
00577
00578
00579 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(0)", 0, cigar.getExpandedCigarIndexFromQueryIndex(0));
00580 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(1)", 1, cigar.getExpandedCigarIndexFromQueryIndex(1));
00581 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(2)", 2, cigar.getExpandedCigarIndexFromQueryIndex(2));
00582 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(3)", 3, cigar.getExpandedCigarIndexFromQueryIndex(3));
00583 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(4)", 14, cigar.getExpandedCigarIndexFromQueryIndex(4));
00584 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(5)", 15, cigar.getExpandedCigarIndexFromQueryIndex(5));
00585 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(6)", 16, cigar.getExpandedCigarIndexFromQueryIndex(6));
00586 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(7)", 17, cigar.getExpandedCigarIndexFromQueryIndex(7));
00587 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(8)", 18, cigar.getExpandedCigarIndexFromQueryIndex(8));
00588 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(9)", 19, cigar.getExpandedCigarIndexFromQueryIndex(9));
00589 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(10)", 20, cigar.getExpandedCigarIndexFromQueryIndex(10));
00590 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(11)", 21, cigar.getExpandedCigarIndexFromQueryIndex(11));
00591 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(12)", 22, cigar.getExpandedCigarIndexFromQueryIndex(12));
00592 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(13)", 27, cigar.getExpandedCigarIndexFromQueryIndex(13));
00593 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(14)", 28, cigar.getExpandedCigarIndexFromQueryIndex(14));
00594 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(15)", 29, cigar.getExpandedCigarIndexFromQueryIndex(15));
00595 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(16)", -1, cigar.getExpandedCigarIndexFromQueryIndex(16));
00596 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(17)", -1, cigar.getExpandedCigarIndexFromQueryIndex(17));
00597 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(18)", -1, cigar.getExpandedCigarIndexFromQueryIndex(18));
00598 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(19)", -1, cigar.getExpandedCigarIndexFromQueryIndex(19));
00599 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(20)", -1, cigar.getExpandedCigarIndexFromQueryIndex(20));
00600 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(21)", -1, cigar.getExpandedCigarIndexFromQueryIndex(21));
00601 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(22)", -1, cigar.getExpandedCigarIndexFromQueryIndex(22));
00602 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(23)", -1, cigar.getExpandedCigarIndexFromQueryIndex(23));
00603 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(24)", -1, cigar.getExpandedCigarIndexFromQueryIndex(24));
00604 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(25)", -1, cigar.getExpandedCigarIndexFromQueryIndex(25));
00605 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(26)", -1, cigar.getExpandedCigarIndexFromQueryIndex(26));
00606 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(27)", -1, cigar.getExpandedCigarIndexFromQueryIndex(27));
00607 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(28)", -1, cigar.getExpandedCigarIndexFromQueryIndex(28));
00608 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(29)", -1, cigar.getExpandedCigarIndexFromQueryIndex(29));
00609 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(30)", -1, cigar.getExpandedCigarIndexFromQueryIndex(30));
00610 check(failures, ++testNum, "getExpandedCigarIndexFromQueryIndex(31)", -1, cigar.getExpandedCigarIndexFromQueryIndex(31));
00611
00612
00613 check(failures, ++testNum, "getCigarCharOp(-1)", '?', cigar.getCigarCharOp(-1));
00614 check(failures, ++testNum, "getCigarCharOp(0)", 'M', cigar.getCigarCharOp(0));
00615 check(failures, ++testNum, "getCigarCharOp(1)", 'M', cigar.getCigarCharOp(1));
00616 check(failures, ++testNum, "getCigarCharOp(2)", 'M', cigar.getCigarCharOp(2));
00617 check(failures, ++testNum, "getCigarCharOp(3)", 'M', cigar.getCigarCharOp(3));
00618 check(failures, ++testNum, "getCigarCharOp(4)", 'N', cigar.getCigarCharOp(4));
00619 check(failures, ++testNum, "getCigarCharOp(5)", 'N', cigar.getCigarCharOp(5));
00620 check(failures, ++testNum, "getCigarCharOp(6)", 'N', cigar.getCigarCharOp(6));
00621 check(failures, ++testNum, "getCigarCharOp(7)", 'N', cigar.getCigarCharOp(7));
00622 check(failures, ++testNum, "getCigarCharOp(8)", 'N', cigar.getCigarCharOp(8));
00623 check(failures, ++testNum, "getCigarCharOp(9)", 'N', cigar.getCigarCharOp(9));
00624 check(failures, ++testNum, "getCigarCharOp(10)", 'N', cigar.getCigarCharOp(10));
00625 check(failures, ++testNum, "getCigarCharOp(11)", 'N', cigar.getCigarCharOp(11));
00626 check(failures, ++testNum, "getCigarCharOp(12)", 'N', cigar.getCigarCharOp(12));
00627 check(failures, ++testNum, "getCigarCharOp(13)", 'N', cigar.getCigarCharOp(13));
00628 check(failures, ++testNum, "getCigarCharOp(14)", 'M', cigar.getCigarCharOp(14));
00629 check(failures, ++testNum, "getCigarCharOp(15)", 'M', cigar.getCigarCharOp(15));
00630 check(failures, ++testNum, "getCigarCharOp(16)", 'M', cigar.getCigarCharOp(16));
00631 check(failures, ++testNum, "getCigarCharOp(17)", 'M', cigar.getCigarCharOp(17));
00632 check(failures, ++testNum, "getCigarCharOp(18)", 'I', cigar.getCigarCharOp(18));
00633 check(failures, ++testNum, "getCigarCharOp(19)", 'I', cigar.getCigarCharOp(19));
00634 check(failures, ++testNum, "getCigarCharOp(20)", 'I', cigar.getCigarCharOp(20));
00635 check(failures, ++testNum, "getCigarCharOp(21)", 'M', cigar.getCigarCharOp(21));
00636 check(failures, ++testNum, "getCigarCharOp(22)", 'M', cigar.getCigarCharOp(22));
00637 check(failures, ++testNum, "getCigarCharOp(23)", 'D', cigar.getCigarCharOp(23));
00638 check(failures, ++testNum, "getCigarCharOp(24)", 'D', cigar.getCigarCharOp(24));
00639 check(failures, ++testNum, "getCigarCharOp(25)", 'D', cigar.getCigarCharOp(25));
00640 check(failures, ++testNum, "getCigarCharOp(26)", 'D', cigar.getCigarCharOp(26));
00641 check(failures, ++testNum, "getCigarCharOp(27)", 'M', cigar.getCigarCharOp(27));
00642 check(failures, ++testNum, "getCigarCharOp(28)", 'M', cigar.getCigarCharOp(28));
00643 check(failures, ++testNum, "getCigarCharOp(29)", 'M', cigar.getCigarCharOp(29));
00644 check(failures, ++testNum, "getCigarCharOp(30)", '?', cigar.getCigarCharOp(30));
00645
00646
00647
00648 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(-1)", '?', cigar.getCigarCharOpFromQueryIndex(-1));
00649 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(0)", 'M', cigar.getCigarCharOpFromQueryIndex(0));
00650 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(1)", 'M', cigar.getCigarCharOpFromQueryIndex(1));
00651 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(2)", 'M', cigar.getCigarCharOpFromQueryIndex(2));
00652 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(3)", 'M', cigar.getCigarCharOpFromQueryIndex(3));
00653 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(4)", 'M', cigar.getCigarCharOpFromQueryIndex(4));
00654 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(5)", 'M', cigar.getCigarCharOpFromQueryIndex(5));
00655 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(6)", 'M', cigar.getCigarCharOpFromQueryIndex(6));
00656 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(7)", 'M', cigar.getCigarCharOpFromQueryIndex(7));
00657 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(8)", 'I', cigar.getCigarCharOpFromQueryIndex(8));
00658 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(9)", 'I', cigar.getCigarCharOpFromQueryIndex(9));
00659 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(10)", 'I', cigar.getCigarCharOpFromQueryIndex(10));
00660 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(11)", 'M', cigar.getCigarCharOpFromQueryIndex(11));
00661 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(12)", 'M', cigar.getCigarCharOpFromQueryIndex(12));
00662 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(13)", 'M', cigar.getCigarCharOpFromQueryIndex(13));
00663 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(14)", 'M', cigar.getCigarCharOpFromQueryIndex(14));
00664 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(15)", 'M', cigar.getCigarCharOpFromQueryIndex(15));
00665 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(16)", '?', cigar.getCigarCharOpFromQueryIndex(16));
00666 check(failures, ++testNum, "getCigarCharOpFromQueryIndex(17)", '?', cigar.getCigarCharOpFromQueryIndex(17));
00667
00668
00669 check(failures, ++testNum, "getCigarCharOpFromRefOffset(-1)", '?', cigar.getCigarCharOpFromRefOffset(-1));
00670 check(failures, ++testNum, "getCigarCharOpFromRefOffset(0)", 'M', cigar.getCigarCharOpFromRefOffset(0));
00671 check(failures, ++testNum, "getCigarCharOpFromRefOffset(1)", 'M', cigar.getCigarCharOpFromRefOffset(1));
00672 check(failures, ++testNum, "getCigarCharOpFromRefOffset(2)", 'M', cigar.getCigarCharOpFromRefOffset(2));
00673 check(failures, ++testNum, "getCigarCharOpFromRefOffset(3)", 'M', cigar.getCigarCharOpFromRefOffset(3));
00674 check(failures, ++testNum, "getCigarCharOpFromRefOffset(4)", 'N', cigar.getCigarCharOpFromRefOffset(4));
00675 check(failures, ++testNum, "getCigarCharOpFromRefOffset(5)", 'N', cigar.getCigarCharOpFromRefOffset(5));
00676 check(failures, ++testNum, "getCigarCharOpFromRefOffset(6)", 'N', cigar.getCigarCharOpFromRefOffset(6));
00677 check(failures, ++testNum, "getCigarCharOpFromRefOffset(7)", 'N', cigar.getCigarCharOpFromRefOffset(7));
00678 check(failures, ++testNum, "getCigarCharOpFromRefOffset(8)", 'N', cigar.getCigarCharOpFromRefOffset(8));
00679 check(failures, ++testNum, "getCigarCharOpFromRefOffset(9)", 'N', cigar.getCigarCharOpFromRefOffset(9));
00680 check(failures, ++testNum, "getCigarCharOpFromRefOffset(10)", 'N', cigar.getCigarCharOpFromRefOffset(10));
00681 check(failures, ++testNum, "getCigarCharOpFromRefOffset(11)", 'N', cigar.getCigarCharOpFromRefOffset(11));
00682 check(failures, ++testNum, "getCigarCharOpFromRefOffset(12)", 'N', cigar.getCigarCharOpFromRefOffset(12));
00683 check(failures, ++testNum, "getCigarCharOpFromRefOffset(13)", 'N', cigar.getCigarCharOpFromRefOffset(13));
00684 check(failures, ++testNum, "getCigarCharOpFromRefOffset(14)", 'M', cigar.getCigarCharOpFromRefOffset(14));
00685 check(failures, ++testNum, "getCigarCharOpFromRefOffset(15)", 'M', cigar.getCigarCharOpFromRefOffset(15));
00686 check(failures, ++testNum, "getCigarCharOpFromRefOffset(16)", 'M', cigar.getCigarCharOpFromRefOffset(16));
00687 check(failures, ++testNum, "getCigarCharOpFromRefOffset(17)", 'M', cigar.getCigarCharOpFromRefOffset(17));
00688 check(failures, ++testNum, "getCigarCharOpFromRefOffset(18)", 'M', cigar.getCigarCharOpFromRefOffset(18));
00689 check(failures, ++testNum, "getCigarCharOpFromRefOffset(19)", 'M', cigar.getCigarCharOpFromRefOffset(19));
00690 check(failures, ++testNum, "getCigarCharOpFromRefOffset(20)", 'D', cigar.getCigarCharOpFromRefOffset(20));
00691 check(failures, ++testNum, "getCigarCharOpFromRefOffset(21)", 'D', cigar.getCigarCharOpFromRefOffset(21));
00692 check(failures, ++testNum, "getCigarCharOpFromRefOffset(22)", 'D', cigar.getCigarCharOpFromRefOffset(22));
00693 check(failures, ++testNum, "getCigarCharOpFromRefOffset(23)", 'D', cigar.getCigarCharOpFromRefOffset(23));
00694 check(failures, ++testNum, "getCigarCharOpFromRefOffset(24)", 'M', cigar.getCigarCharOpFromRefOffset(24));
00695 check(failures, ++testNum, "getCigarCharOpFromRefOffset(25)", 'M', cigar.getCigarCharOpFromRefOffset(25));
00696 check(failures, ++testNum, "getCigarCharOpFromRefOffset(26)", 'M', cigar.getCigarCharOpFromRefOffset(26));
00697 check(failures, ++testNum, "getCigarCharOpFromRefOffset(27)", '?', cigar.getCigarCharOpFromRefOffset(27));
00698 check(failures, ++testNum, "getCigarCharOpFromRefOffset(28)", '?', cigar.getCigarCharOpFromRefOffset(28));
00699 check(failures, ++testNum, "getCigarCharOpFromRefOffset(29)", '?', cigar.getCigarCharOpFromRefOffset(29));
00700 check(failures, ++testNum, "getCigarCharOpFromRefOffset(30)", '?', cigar.getCigarCharOpFromRefOffset(30));
00701
00702
00703
00704 check(failures, ++testNum, "getCigarCharOpFromRefPos(-1, 5)", '?', cigar.getCigarCharOpFromRefPos(-1,5));
00705 check(failures, ++testNum, "getCigarCharOpFromRefPos(0, 5)", '?', cigar.getCigarCharOpFromRefPos(0,5));
00706 check(failures, ++testNum, "getCigarCharOpFromRefPos(1, 5)", '?', cigar.getCigarCharOpFromRefPos(1,5));
00707 check(failures, ++testNum, "getCigarCharOpFromRefPos(2, 5)", '?', cigar.getCigarCharOpFromRefPos(2,5));
00708 check(failures, ++testNum, "getCigarCharOpFromRefPos(3, 5)", '?', cigar.getCigarCharOpFromRefPos(3,5));
00709 check(failures, ++testNum, "getCigarCharOpFromRefPos(4, 5)", '?', cigar.getCigarCharOpFromRefPos(4,5));
00710 check(failures, ++testNum, "getCigarCharOpFromRefPos(5, 5)", 'M', cigar.getCigarCharOpFromRefPos(5,5));
00711 check(failures, ++testNum, "getCigarCharOpFromRefPos(6, 5)", 'M', cigar.getCigarCharOpFromRefPos(6,5));
00712 check(failures, ++testNum, "getCigarCharOpFromRefPos(7, 5)", 'M', cigar.getCigarCharOpFromRefPos(7,5));
00713 check(failures, ++testNum, "getCigarCharOpFromRefPos(8, 5)", 'M', cigar.getCigarCharOpFromRefPos(8,5));
00714 check(failures, ++testNum, "getCigarCharOpFromRefPos(9, 5)", 'N', cigar.getCigarCharOpFromRefPos(9,5));
00715 check(failures, ++testNum, "getCigarCharOpFromRefPos(10, 5)", 'N', cigar.getCigarCharOpFromRefPos(10,5));
00716 check(failures, ++testNum, "getCigarCharOpFromRefPos(11, 5)", 'N', cigar.getCigarCharOpFromRefPos(11,5));
00717 check(failures, ++testNum, "getCigarCharOpFromRefPos(12, 5)", 'N', cigar.getCigarCharOpFromRefPos(12,5));
00718 check(failures, ++testNum, "getCigarCharOpFromRefPos(13, 5)", 'N', cigar.getCigarCharOpFromRefPos(13,5));
00719 check(failures, ++testNum, "getCigarCharOpFromRefPos(14, 5)", 'N', cigar.getCigarCharOpFromRefPos(14,5));
00720 check(failures, ++testNum, "getCigarCharOpFromRefPos(15, 5)", 'N', cigar.getCigarCharOpFromRefPos(15,5));
00721 check(failures, ++testNum, "getCigarCharOpFromRefPos(16, 5)", 'N', cigar.getCigarCharOpFromRefPos(16,5));
00722 check(failures, ++testNum, "getCigarCharOpFromRefPos(17, 5)", 'N', cigar.getCigarCharOpFromRefPos(17,5));
00723 check(failures, ++testNum, "getCigarCharOpFromRefPos(18, 5)", 'N', cigar.getCigarCharOpFromRefPos(18,5));
00724 check(failures, ++testNum, "getCigarCharOpFromRefPos(19, 5)", 'M', cigar.getCigarCharOpFromRefPos(19,5));
00725 check(failures, ++testNum, "getCigarCharOpFromRefPos(20, 5)", 'M', cigar.getCigarCharOpFromRefPos(20,5));
00726 check(failures, ++testNum, "getCigarCharOpFromRefPos(21, 5)", 'M', cigar.getCigarCharOpFromRefPos(21,5));
00727 check(failures, ++testNum, "getCigarCharOpFromRefPos(22, 5)", 'M', cigar.getCigarCharOpFromRefPos(22,5));
00728 check(failures, ++testNum, "getCigarCharOpFromRefPos(23, 5)", 'M', cigar.getCigarCharOpFromRefPos(23,5));
00729 check(failures, ++testNum, "getCigarCharOpFromRefPos(24, 5)", 'M', cigar.getCigarCharOpFromRefPos(24,5));
00730 check(failures, ++testNum, "getCigarCharOpFromRefPos(25, 5)", 'D', cigar.getCigarCharOpFromRefPos(25,5));
00731 check(failures, ++testNum, "getCigarCharOpFromRefPos(26, 5)", 'D', cigar.getCigarCharOpFromRefPos(26,5));
00732 check(failures, ++testNum, "getCigarCharOpFromRefPos(27, 5)", 'D', cigar.getCigarCharOpFromRefPos(27,5));
00733 check(failures, ++testNum, "getCigarCharOpFromRefPos(28, 5)", 'D', cigar.getCigarCharOpFromRefPos(28,5));
00734 check(failures, ++testNum, "getCigarCharOpFromRefPos(29, 5)", 'M', cigar.getCigarCharOpFromRefPos(29,5));
00735 check(failures, ++testNum, "getCigarCharOpFromRefPos(30, 5)", 'M', cigar.getCigarCharOpFromRefPos(30,5));
00736 check(failures, ++testNum, "getCigarCharOpFromRefPos(31, 5)", 'M', cigar.getCigarCharOpFromRefPos(31,5));
00737 check(failures, ++testNum, "getCigarCharOpFromRefPos(32, 5)", '?', cigar.getCigarCharOpFromRefPos(32,5));
00738 check(failures, ++testNum, "getCigarCharOpFromRefPos(33, 5)", '?', cigar.getCigarCharOpFromRefPos(33,5));
00739
00740
00741
00742
00743
00744
00745 check(failures, ++testNum, "getNumOverlaps(5,32,5)", (uint32_t)13, cigar.getNumOverlaps(5,32,5));
00746 check(failures, ++testNum, "getNumOverlaps(5,31,5)", (uint32_t)12, cigar.getNumOverlaps(5,31,5));
00747 check(failures, ++testNum, "getNumOverlaps(0,100,5)", (uint32_t)13, cigar.getNumOverlaps(0,100,5));
00748 check(failures, ++testNum, "getNumOverlaps(-1, -1,5)", (uint32_t)13, cigar.getNumOverlaps(-1, -1,5));
00749 check(failures, ++testNum, "getNumOverlaps(-1,10,5)", (uint32_t)4, cigar.getNumOverlaps(-1,10,5));
00750 check(failures, ++testNum, "getNumOverlaps(10,-1,5)", (uint32_t)9, cigar.getNumOverlaps(10,-1,5));
00751 check(failures, ++testNum, "getNumOverlaps(9,19,5)", (uint32_t)0, cigar.getNumOverlaps(9,19,5));
00752 check(failures, ++testNum, "getNumOverlaps(9,20,5)", (uint32_t)1, cigar.getNumOverlaps(9,20,5));
00753 check(failures, ++testNum, "getNumOverlaps(9,6,5)", (uint32_t)0, cigar.getNumOverlaps(9,6,5));
00754 check(failures, ++testNum, "getNumOverlaps(0,5,5)", (uint32_t)0, cigar.getNumOverlaps(0,5,5));
00755 check(failures, ++testNum, "getNumOverlaps(32,40,5)", (uint32_t)0, cigar.getNumOverlaps(32,40,5));
00756 check(failures, ++testNum, "getNumOverlaps(0,5,1)", (uint32_t)4, cigar.getNumOverlaps(0,5,1));
00757 check(failures, ++testNum, "getNumOverlaps(32,40,32)", (uint32_t)4, cigar.getNumOverlaps(32,40,32));
00758
00759
00760
00761 check(failures, ++testNum, "getQueryIndex(0)", 0, cigar.getQueryIndex(0));
00762 check(failures, ++testNum, "getQueryIndex(1)", 1, cigar.getQueryIndex(1));
00763 check(failures, ++testNum, "getQueryIndex(2)", 2, cigar.getQueryIndex(2));
00764 check(failures, ++testNum, "getQueryIndex(3)", 3, cigar.getQueryIndex(3));
00765
00766 check(failures, ++testNum, "getQueryIndex(4)", -1, cigar.getQueryIndex(4));
00767 check(failures, ++testNum, "getQueryIndex(5)", -1, cigar.getQueryIndex(5));
00768 check(failures, ++testNum, "getQueryIndex(6)", -1, cigar.getQueryIndex(6));
00769 check(failures, ++testNum, "getQueryIndex(7)", -1, cigar.getQueryIndex(7));
00770 check(failures, ++testNum, "getQueryIndex(8)", -1, cigar.getQueryIndex(8));
00771 check(failures, ++testNum, "getQueryIndex(9)", -1, cigar.getQueryIndex(9));
00772 check(failures, ++testNum, "getQueryIndex(10)", -1, cigar.getQueryIndex(10));
00773 check(failures, ++testNum, "getQueryIndex(11)", -1, cigar.getQueryIndex(11));
00774 check(failures, ++testNum, "getQueryIndex(12)", -1, cigar.getQueryIndex(12));
00775 check(failures, ++testNum, "getQueryIndex(13)", -1, cigar.getQueryIndex(13));
00776
00777 check(failures, ++testNum, "getQueryIndex(14)", 4, cigar.getQueryIndex(14));
00778 check(failures, ++testNum, "getQueryIndex(15)", 5, cigar.getQueryIndex(15));
00779 check(failures, ++testNum, "getQueryIndex(16)", 6, cigar.getQueryIndex(16));
00780 check(failures, ++testNum, "getQueryIndex(17)", 7, cigar.getQueryIndex(17));
00781
00782
00783 check(failures, ++testNum, "getQueryIndex(18)", 11, cigar.getQueryIndex(18));
00784 check(failures, ++testNum, "getQueryIndex(19)", 12, cigar.getQueryIndex(19));
00785
00786 check(failures, ++testNum, "getQueryIndex(20)", -1, cigar.getQueryIndex(20));
00787 check(failures, ++testNum, "getQueryIndex(21)", -1, cigar.getQueryIndex(21));
00788 check(failures, ++testNum, "getQueryIndex(22)", -1, cigar.getQueryIndex(22));
00789 check(failures, ++testNum, "getQueryIndex(23)", -1, cigar.getQueryIndex(23));
00790
00791 check(failures, ++testNum, "getQueryIndex(24)", 13, cigar.getQueryIndex(24));
00792 check(failures, ++testNum, "getQueryIndex(25)", 14, cigar.getQueryIndex(25));
00793 check(failures, ++testNum, "getQueryIndex(26)", 15, cigar.getQueryIndex(26));
00794
00795
00796
00797 check(failures, ++testNum, "getQueryIndex(0, 5)", -1, cigar.getQueryIndex(0, 5));
00798 check(failures, ++testNum, "getQueryIndex(1, 5)", -1, cigar.getQueryIndex(1, 5));
00799 check(failures, ++testNum, "getQueryIndex(2, 5)", -1, cigar.getQueryIndex(2, 5));
00800 check(failures, ++testNum, "getQueryIndex(3, 5)", -1, cigar.getQueryIndex(3, 5));
00801 check(failures, ++testNum, "getQueryIndex(4, 5)", -1, cigar.getQueryIndex(4, 5));
00802
00803 check(failures, ++testNum, "getQueryIndex(5, 5)", 0, cigar.getQueryIndex(5, 5));
00804 check(failures, ++testNum, "getQueryIndex(6, 5)", 1, cigar.getQueryIndex(6, 5));
00805 check(failures, ++testNum, "getQueryIndex(7, 5)", 2, cigar.getQueryIndex(7, 5));
00806 check(failures, ++testNum, "getQueryIndex(8, 5)", 3, cigar.getQueryIndex(8, 5));
00807
00808 check(failures, ++testNum, "getQueryIndex(9, 5)", -1, cigar.getQueryIndex(9, 5));
00809 check(failures, ++testNum, "getQueryIndex(10, 5)", -1, cigar.getQueryIndex(10, 5));
00810 check(failures, ++testNum, "getQueryIndex(11, 5)", -1, cigar.getQueryIndex(11, 5));
00811 check(failures, ++testNum, "getQueryIndex(12, 5)", -1, cigar.getQueryIndex(12, 5));
00812 check(failures, ++testNum, "getQueryIndex(13, 5)", -1, cigar.getQueryIndex(13, 5));
00813 check(failures, ++testNum, "getQueryIndex(14, 5)", -1, cigar.getQueryIndex(14, 5));
00814 check(failures, ++testNum, "getQueryIndex(15, 5)", -1, cigar.getQueryIndex(15, 5));
00815 check(failures, ++testNum, "getQueryIndex(16, 5)", -1, cigar.getQueryIndex(16, 5));
00816 check(failures, ++testNum, "getQueryIndex(17, 5)", -1, cigar.getQueryIndex(17, 5));
00817 check(failures, ++testNum, "getQueryIndex(18, 5)", -1, cigar.getQueryIndex(18, 5));
00818
00819 check(failures, ++testNum, "getQueryIndex(19, 5)", 4, cigar.getQueryIndex(19, 5));
00820 check(failures, ++testNum, "getQueryIndex(20, 5)", 5, cigar.getQueryIndex(20, 5));
00821 check(failures, ++testNum, "getQueryIndex(21, 5)", 6, cigar.getQueryIndex(21, 5));
00822 check(failures, ++testNum, "getQueryIndex(22, 5)", 7, cigar.getQueryIndex(22, 5));
00823
00824
00825 check(failures, ++testNum, "getQueryIndex(23, 5)", 11, cigar.getQueryIndex(23, 5));
00826 check(failures, ++testNum, "getQueryIndex(24, 5)", 12, cigar.getQueryIndex(24, 5));
00827
00828 check(failures, ++testNum, "getQueryIndex(25, 5)", -1, cigar.getQueryIndex(25, 5));
00829 check(failures, ++testNum, "getQueryIndex(26, 5)", -1, cigar.getQueryIndex(26, 5));
00830 check(failures, ++testNum, "getQueryIndex(27, 5)", -1, cigar.getQueryIndex(27, 5));
00831 check(failures, ++testNum, "getQueryIndex(28, 5)", -1, cigar.getQueryIndex(28, 5));
00832
00833 check(failures, ++testNum, "getQueryIndex(29, 5)", 13, cigar.getQueryIndex(29, 5));
00834 check(failures, ++testNum, "getQueryIndex(30, 5)", 14, cigar.getQueryIndex(30, 5));
00835 check(failures, ++testNum, "getQueryIndex(31, 5)", 15, cigar.getQueryIndex(31, 5));
00836
00837
00838
00839 check(failures, ++testNum, "getRefOffset(0)", 0, cigar.getRefOffset(0));
00840 check(failures, ++testNum, "getRefOffset(1)", 1, cigar.getRefOffset(1));
00841 check(failures, ++testNum, "getRefOffset(2)", 2, cigar.getRefOffset(2));
00842 check(failures, ++testNum, "getRefOffset(3)", 3, cigar.getRefOffset(3));
00843
00844
00845 check(failures, ++testNum, "getRefOffset(4)", 14, cigar.getRefOffset(4));
00846 check(failures, ++testNum, "getRefOffset(5)", 15, cigar.getRefOffset(5));
00847 check(failures, ++testNum, "getRefOffset(6)", 16, cigar.getRefOffset(6));
00848 check(failures, ++testNum, "getRefOffset(7)", 17, cigar.getRefOffset(7));
00849
00850 check(failures, ++testNum, "getRefOffset(8)", -1, cigar.getRefOffset(8));
00851 check(failures, ++testNum, "getRefOffset(9)", -1, cigar.getRefOffset(9));
00852 check(failures, ++testNum, "getRefOffset(10)", -1, cigar.getRefOffset(10));
00853
00854 check(failures, ++testNum, "getRefOffset(11)", 18, cigar.getRefOffset(11));
00855 check(failures, ++testNum, "getRefOffset(12)", 19, cigar.getRefOffset(12));
00856
00857
00858 check(failures, ++testNum, "getRefOffset(13)", 24, cigar.getRefOffset(13));
00859 check(failures, ++testNum, "getRefOffset(14)", 25, cigar.getRefOffset(14));
00860 check(failures, ++testNum, "getRefOffset(15)", 26, cigar.getRefOffset(15));
00861
00862
00863
00864
00865 check(failures, ++testNum, "getRefPosition(0, 5)", 5, cigar.getRefPosition(0, 5));
00866 check(failures, ++testNum, "getRefPosition(1, 5)", 6, cigar.getRefPosition(1, 5));
00867 check(failures, ++testNum, "getRefPosition(2, 5)", 7, cigar.getRefPosition(2, 5));
00868 check(failures, ++testNum, "getRefPosition(3, 5)", 8, cigar.getRefPosition(3, 5));
00869
00870
00871 check(failures, ++testNum, "getRefPosition(4, 5)", 19, cigar.getRefPosition(4, 5));
00872 check(failures, ++testNum, "getRefPosition(5, 5)", 20, cigar.getRefPosition(5, 5));
00873 check(failures, ++testNum, "getRefPosition(6, 5)", 21, cigar.getRefPosition(6, 5));
00874 check(failures, ++testNum, "getRefPosition(7, 5)", 22, cigar.getRefPosition(7, 5));
00875
00876 check(failures, ++testNum, "getRefPosition(8, 5)", -1, cigar.getRefPosition(8, 5));
00877 check(failures, ++testNum, "getRefPosition(9, 5)", -1, cigar.getRefPosition(9, 5));
00878 check(failures, ++testNum, "getRefPosition(10, 5)", -1, cigar.getRefPosition(10, 5));
00879
00880 check(failures, ++testNum, "getRefPosition(11, 5)", 23, cigar.getRefPosition(11, 5));
00881 check(failures, ++testNum, "getRefPosition(12, 5)", 24, cigar.getRefPosition(12, 5));
00882
00883
00884 check(failures, ++testNum, "getRefPosition(13, 5)", 29, cigar.getRefPosition(13, 5));
00885 check(failures, ++testNum, "getRefPosition(14, 5)", 30, cigar.getRefPosition(14, 5));
00886 check(failures, ++testNum, "getRefPosition(15, 5)", 31, cigar.getRefPosition(15, 5));
00887
00888
00889
00890
00891
00892
00893 uint32_t cigarBuf[] = {0x24,
00894 0x30,
00895 0x11,
00896 0x20,
00897 0x12,
00898 0x10,
00899 0x26,
00900 0x10,
00901 0x33,
00902 0x10,
00903 0x35};
00904 cigar.Set(cigarBuf, 11);
00905 cigarString = "HI";
00906 cigar.getCigarString(cigarString);
00907 expectedResult = "2S3M1I2M1D1M2P1M3N1M3H";
00908 check(failures, ++testNum, "getCigarString", expectedResult, cigarString);
00909 check(failures, ++testNum, "getNumEndClips", 3, cigar.getNumEndClips());
00910 check(failures, ++testNum, "getNumBeginClips", 2, cigar.getNumBeginClips());
00911
00912 std::cout << "\nCigarRoller PASS: " << testNum - failures << " FAIL: " << failures << std::endl;
00913
00914 return(failures);
00915 }
00916
00917
00918 int main(int argc, const char **argv)
00919 {
00920 CigarRollerTest roller;
00921
00922 bool showAllCasesFlag = false;
00923 int opt;
00924
00925 while(( opt = getopt(argc, (char **) argv, "v")) != -1) {
00926 switch(opt) {
00927 case 'v':
00928 showAllCasesFlag = true;
00929 break;
00930 default:
00931 std::cerr << "usage: testSW [-v]" << std::endl;
00932 exit(1);
00933 }
00934 }
00935 if(showAllCasesFlag)
00936 {
00937 }
00938
00939
00940
00941
00942 return(roller.test());
00943
00944
00945
00946
00947
00948
00949
00950
00951 }