source: poppler/vendor/current/qt4/tests/check_lexer.cpp@ 1159

Last change on this file since 1159 was 1159, checked in by Silvan Scherrer, 10 years ago

poppler: update vendor to 0.35.0

File size: 3.1 KB
Line 
1#include <QtTest/QtTest>
2
3#include "Object.h"
4#include "Lexer.h"
5
6class TestLexer : public QObject
7{
8 Q_OBJECT
9private slots:
10 void testNumbers();
11};
12
13void TestLexer::testNumbers()
14{
15 char data[] = "0 1 -1 2147483647 -2147483647 2147483648 -2147483648 4294967297 -2147483649 0.1 1.1 -1.1 2147483647.1 -2147483647.1 2147483648.1 -2147483648.1 4294967297.1 -2147483649.1 9223372036854775807 18446744073709551615";
16 Object dummy;
17 MemStream *stream = new MemStream(data, 0, strlen(data), &dummy);
18 Lexer *lexer = new Lexer(NULL, stream);
19 QVERIFY( lexer );
20
21 Object obj;
22
23 lexer->getObj(&obj);
24 QCOMPARE(obj.getType(), objInt);
25 QCOMPARE(obj.getInt(), 0);
26 obj.free();
27
28 lexer->getObj(&obj);
29 QCOMPARE(obj.getType(), objInt);
30 QCOMPARE(obj.getInt(), 1);
31 obj.free();
32
33 lexer->getObj(&obj);
34 QCOMPARE(obj.getType(), objInt);
35 QCOMPARE(obj.getInt(), -1);
36 obj.free();
37
38 lexer->getObj(&obj);
39 QCOMPARE(obj.getType(), objInt);
40 QCOMPARE(obj.getInt(), 2147483647);
41 obj.free();
42
43 lexer->getObj(&obj);
44 QCOMPARE(obj.getType(), objInt);
45 QCOMPARE(obj.getInt(), -2147483647);
46 obj.free();
47
48 lexer->getObj(&obj);
49 QCOMPARE(obj.getType(), objInt64);
50 QCOMPARE(obj.getInt64(), 2147483648ll);
51 obj.free();
52
53 lexer->getObj(&obj);
54 QCOMPARE(obj.getType(), objInt);
55 QCOMPARE(obj.getInt(), -2147483647-1);
56 obj.free();
57
58 lexer->getObj(&obj);
59 QCOMPARE(obj.getType(), objInt64);
60 QCOMPARE(obj.getInt64(), 4294967297ll);
61 obj.free();
62
63 lexer->getObj(&obj);
64 QCOMPARE(obj.getType(), objInt64);
65 QCOMPARE(obj.getInt64(), -2147483649ll);
66 obj.free();
67
68 lexer->getObj(&obj);
69 QCOMPARE(obj.getType(), objReal);
70 QCOMPARE(obj.getReal(), 0.1);
71 obj.free();
72
73 lexer->getObj(&obj);
74 QCOMPARE(obj.getType(), objReal);
75 QCOMPARE(obj.getReal(), 1.1);
76 obj.free();
77
78 lexer->getObj(&obj);
79 QCOMPARE(obj.getType(), objReal);
80 QCOMPARE(obj.getReal(), -1.1);
81 obj.free();
82
83 lexer->getObj(&obj);
84 QCOMPARE(obj.getType(), objReal);
85 QCOMPARE(obj.getReal(), 2147483647.1);
86 obj.free();
87
88 lexer->getObj(&obj);
89 QCOMPARE(obj.getType(), objReal);
90 QCOMPARE(obj.getReal(), -2147483647.1);
91 obj.free();
92
93 lexer->getObj(&obj);
94 QCOMPARE(obj.getType(), objReal);
95 QCOMPARE(obj.getReal(), 2147483648.1);
96 obj.free();
97
98 lexer->getObj(&obj);
99 QCOMPARE(obj.getType(), objReal);
100 QCOMPARE(obj.getReal(), -2147483648.1);
101 obj.free();
102
103 lexer->getObj(&obj);
104 QCOMPARE(obj.getType(), objReal);
105 QCOMPARE(obj.getReal(), 4294967297.1);
106 obj.free();
107
108 lexer->getObj(&obj);
109 QCOMPARE(obj.getType(), objReal);
110 QCOMPARE(obj.getReal(), -2147483649.1);
111 obj.free();
112
113 lexer->getObj(&obj);
114 QCOMPARE(obj.getType(), objInt64);
115 QCOMPARE(obj.getInt64(), 9223372036854775807ll);
116 obj.free();
117
118 lexer->getObj(&obj);
119 QCOMPARE(obj.getType(), objReal);
120 QCOMPARE(obj.getReal(), 18446744073709551616.);
121 obj.free();
122
123 delete lexer;
124}
125
126QTEST_MAIN(TestLexer)
127#include "check_lexer.moc"
128
Note: See TracBrowser for help on using the repository browser.