~ubuntu-branches/ubuntu/vivid/emscripten/vivid

« back to all changes in this revision

Viewing changes to tests/poppler/qt4/tests/check_search.cpp

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-05-02 13:11:51 UTC
  • Revision ID: package-import@ubuntu.com-20130502131151-q8dvteqr1ef2x7xz
Tags: upstream-1.4.1~20130504~adb56cb
Import upstream version 1.4.1~20130504~adb56cb

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include <QtTest/QtTest>
 
2
 
 
3
#include <poppler-qt4.h>
 
4
 
 
5
class TestSearch: public QObject
 
6
{
 
7
    Q_OBJECT
 
8
private slots:
 
9
    void bug7063();
 
10
    void testNextAndPrevious();
 
11
};
 
12
 
 
13
void TestSearch::bug7063()
 
14
{
 
15
    Poppler::Document *doc;
 
16
    doc = Poppler::Document::load("../../../test/unittestcases/bug7063.pdf");
 
17
    QVERIFY( doc );
 
18
   
 
19
    Poppler::Page *page = doc->page(0);
 
20
    QRectF pageRegion( QPointF(0,0), page->pageSize() );
 
21
 
 
22
    QCOMPARE( page->search(QString("non-ascii:"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
23
 
 
24
    QCOMPARE( page->search(QString("Ascii"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false );
 
25
    QCOMPARE( page->search(QString("Ascii"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseInsensitive), true );
 
26
 
 
27
    QCOMPARE( page->search(QString("latin1:"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false );
 
28
 
 
29
    QCOMPARE( page->search(QString::fromUtf8("é"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
30
    QCOMPARE( page->search(QString::fromUtf8("à"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
31
    QCOMPARE( page->search(QString::fromUtf8("ç"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
32
    QCOMPARE( page->search(QString::fromUtf8("search \"é\", \"à\" or \"ç\""), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
33
    QCOMPARE( page->search(QString::fromUtf8("¥µ©"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
34
    QCOMPARE( page->search(QString::fromUtf8("¥©"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false );
 
35
  
 
36
    delete doc;
 
37
}
 
38
 
 
39
void TestSearch::testNextAndPrevious()
 
40
{
 
41
    Poppler::Document *doc;
 
42
    doc = Poppler::Document::load("../../../test/unittestcases/xr01.pdf");
 
43
    QVERIFY( doc );
 
44
  
 
45
    Poppler::Page *page = doc->page(0);
 
46
    QRectF region( QPointF(0,0), page->pageSize() );
 
47
    
 
48
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
 
49
    QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
 
50
    QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
 
51
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
52
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
53
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true );
 
54
    QVERIFY( qAbs(region.x() - 171.46) < 0.01 );
 
55
    QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
 
56
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
57
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
58
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true );
 
59
    QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
 
60
    QVERIFY( qAbs(region.y() - 139.81) < 0.01 );
 
61
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
62
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
63
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true );
 
64
    QVERIFY( qAbs(region.x() - 171.46) < 0.01 );
 
65
    QVERIFY( qAbs(region.y() - 139.81) < 0.01 );
 
66
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
67
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
68
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), false );
 
69
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true );
 
70
    QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
 
71
    QVERIFY( qAbs(region.y() - 139.81) < 0.01 );
 
72
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
73
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
74
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true );
 
75
    QVERIFY( qAbs(region.x() - 171.46) < 0.01 );
 
76
    QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
 
77
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
78
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
79
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true );
 
80
    QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
 
81
    QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
 
82
    QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
 
83
    QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
 
84
    QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), false );
 
85
    
 
86
    delete doc;
 
87
}
 
88
 
 
89
QTEST_MAIN(TestSearch)
 
90
#include "check_search.moc"
 
91