Changeset View
Changeset View
Standalone View
Standalone View
autotests/searchtest.cpp
Show First 20 Lines • Show All 42 Lines • ▼ Show 20 Line(s) | 39 | private slots: | |||
---|---|---|---|---|---|
43 | void test323262(); | 43 | void test323262(); | ||
44 | void test323263(); | 44 | void test323263(); | ||
45 | void testDottedI(); | 45 | void testDottedI(); | ||
46 | void testHyphenAtEndOfLineWithoutYOverlap(); | 46 | void testHyphenAtEndOfLineWithoutYOverlap(); | ||
47 | void testHyphenWithYOverlap(); | 47 | void testHyphenWithYOverlap(); | ||
48 | void testHyphenAtEndOfPage(); | 48 | void testHyphenAtEndOfPage(); | ||
49 | void testOneColumn(); | 49 | void testOneColumn(); | ||
50 | void testTwoColumns(); | 50 | void testTwoColumns(); | ||
51 | void testAcrossMultipleLines_data(); | ||||
52 | void testAcrossMultipleLines(); | ||||
51 | }; | 53 | }; | ||
52 | 54 | | |||
53 | void SearchTest::initTestCase() | 55 | void SearchTest::initTestCase() | ||
54 | { | 56 | { | ||
55 | qRegisterMetaType<Okular::Document::SearchStatus>(); | 57 | qRegisterMetaType<Okular::Document::SearchStatus>(); | ||
56 | Okular::SettingsCore::instance( QStringLiteral("searchtest") ); | 58 | Okular::SettingsCore::instance( QStringLiteral("searchtest") ); | ||
57 | } | 59 | } | ||
58 | 60 | | |||
▲ Show 20 Lines • Show All 359 Lines • ▼ Show 20 Line(s) | 401 | { | |||
418 | Okular::RegularAreaRect* result = tp->findText(0, QStringLiteral("This text in"), | 420 | Okular::RegularAreaRect* result = tp->findText(0, QStringLiteral("This text in"), | ||
419 | Okular::FromTop, Qt::CaseSensitive, nullptr); | 421 | Okular::FromTop, Qt::CaseSensitive, nullptr); | ||
420 | QVERIFY(!result); | 422 | QVERIFY(!result); | ||
421 | delete result; | 423 | delete result; | ||
422 | 424 | | |||
423 | delete page; | 425 | delete page; | ||
424 | } | 426 | } | ||
425 | 427 | | |||
428 | void SearchTest::testAcrossMultipleLines_data() | ||||
429 | { | ||||
430 | QTest::addColumn<QVector <QString> >("text"); | ||||
431 | QTest::addColumn<QString>("searchString"); | ||||
432 | QTest::addColumn<int>("testCase"); | ||||
433 | | ||||
434 | QTest::newRow("Across Lines") << (QVector<QString>() << QStringLiteral("ab\na\nab\na, one more time, ab\na\nab\na")) << QStringLiteral("ab a ab a") << 1; | ||||
435 | QTest::newRow("LineFeed search") << (QVector<QString>() << QStringLiteral("ab cd ab cd")) << QStringLiteral("ab\ncd") << 1; | ||||
436 | QTest::newRow("LineFeed text") << (QVector<QString>() << QStringLiteral("ab\ncd ab\ncd")) << QStringLiteral("ab\ncd") << 1; | ||||
437 | QTest::newRow("Tab text") << (QVector<QString>() << QStringLiteral("ab\tcd ab\tcd")) << QStringLiteral("ab cd") << 1; | ||||
438 | QTest::newRow("Across Lines not find") << (QVector<QString>() << QStringLiteral("ab\naaa\nab\na")) << QStringLiteral("aba") << 2; | ||||
439 | QTest::newRow("Hyphen doesn't count") << (QVector<QString>() << QStringLiteral("ab-\ncd")) << QStringLiteral("ab cd") << 2; | ||||
440 | } | ||||
441 | | ||||
442 | void SearchTest::testAcrossMultipleLines() | ||||
443 | { | ||||
444 | QFETCH(QVector<QString>, text); | ||||
445 | QFETCH(QString, searchString); | ||||
446 | QFETCH(int, testCase); | ||||
447 | | ||||
448 | QVector<Okular::NormalizedRect> rect; \ | ||||
449 | | ||||
450 | for (int i = 0; i < text.size(); i++) { | ||||
451 | rect << Okular::NormalizedRect(0.1*i, 0.0, 0.1*(i+1), 0.1); \ | ||||
452 | } | ||||
453 | | ||||
454 | CREATE_PAGE; | ||||
455 | | ||||
456 | switch(testCase) | ||||
457 | { | ||||
458 | case 1: | ||||
459 | TEST_NEXT_PREV(Okular::FromTop, true); | ||||
460 | TEST_NEXT_PREV(Okular::NextResult, true); | ||||
461 | TEST_NEXT_PREV(Okular::PreviousResult, true); | ||||
462 | TEST_NEXT_PREV(Okular::NextResult, true); | ||||
463 | TEST_NEXT_PREV(Okular::NextResult, false); | ||||
464 | | ||||
465 | TEST_NEXT_PREV(Okular::FromBottom, true); | ||||
466 | TEST_NEXT_PREV(Okular::PreviousResult, true); | ||||
467 | TEST_NEXT_PREV(Okular::PreviousResult, false); | ||||
468 | break; | ||||
469 | case 2: | ||||
470 | TEST_NEXT_PREV(Okular::FromTop, false); | ||||
471 | TEST_NEXT_PREV(Okular::NextResult, false); | ||||
472 | | ||||
473 | TEST_NEXT_PREV(Okular::FromBottom, false); | ||||
474 | TEST_NEXT_PREV(Okular::PreviousResult, false); | ||||
475 | break; | ||||
476 | } | ||||
477 | | ||||
478 | delete page; | ||||
479 | } | ||||
480 | | ||||
426 | QTEST_MAIN( SearchTest ) | 481 | QTEST_MAIN( SearchTest ) | ||
427 | #include "searchtest.moc" | 482 | #include "searchtest.moc" |