Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(860)

Side by Side Diff: core/fpdfapi/fpdf_parser/cpdf_object_unittest.cpp

Issue 1879683002: Remove CPDF_Object::GetConstString and overrides (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Move bLuminosity down. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/fpdfapi/fpdf_parser/cpdf_object.cpp ('k') | core/fpdfapi/fpdf_parser/cpdf_reference.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 PDFium Authors. All rights reserved. 1 // Copyright 2016 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "core/fpdfapi/fpdf_parser/cpdf_boolean.h" 5 #include "core/fpdfapi/fpdf_parser/cpdf_boolean.h"
6 #include "core/fpdfapi/fpdf_parser/cpdf_null.h" 6 #include "core/fpdfapi/fpdf_parser/cpdf_null.h"
7 #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h" 7 #include "core/fpdfapi/fpdf_parser/include/cpdf_array.h"
8 #include "core/fpdfapi/fpdf_parser/include/cpdf_dictionary.h" 8 #include "core/fpdfapi/fpdf_parser/include/cpdf_dictionary.h"
9 #include "core/fpdfapi/fpdf_parser/include/cpdf_name.h" 9 #include "core/fpdfapi/fpdf_parser/include/cpdf_name.h"
10 #include "core/fpdfapi/fpdf_parser/include/cpdf_number.h" 10 #include "core/fpdfapi/fpdf_parser/include/cpdf_number.h"
(...skipping 16 matching lines...) Expand all
27 void TestArrayAccessors(const CPDF_Array* arr, 27 void TestArrayAccessors(const CPDF_Array* arr,
28 size_t index, 28 size_t index,
29 const char* str_val, 29 const char* str_val,
30 const char* const_str_val, 30 const char* const_str_val,
31 int int_val, 31 int int_val,
32 float float_val, 32 float float_val,
33 CPDF_Array* arr_val, 33 CPDF_Array* arr_val,
34 CPDF_Dictionary* dict_val, 34 CPDF_Dictionary* dict_val,
35 CPDF_Stream* stream_val) { 35 CPDF_Stream* stream_val) {
36 EXPECT_STREQ(str_val, arr->GetStringAt(index).c_str()); 36 EXPECT_STREQ(str_val, arr->GetStringAt(index).c_str());
37 EXPECT_STREQ(const_str_val, arr->GetConstStringAt(index).c_str());
38 EXPECT_EQ(int_val, arr->GetIntegerAt(index)); 37 EXPECT_EQ(int_val, arr->GetIntegerAt(index));
39 EXPECT_EQ(float_val, arr->GetNumberAt(index)); 38 EXPECT_EQ(float_val, arr->GetNumberAt(index));
40 EXPECT_EQ(float_val, arr->GetFloatAt(index)); 39 EXPECT_EQ(float_val, arr->GetFloatAt(index));
41 EXPECT_EQ(arr_val, arr->GetArrayAt(index)); 40 EXPECT_EQ(arr_val, arr->GetArrayAt(index));
42 EXPECT_EQ(dict_val, arr->GetDictAt(index)); 41 EXPECT_EQ(dict_val, arr->GetDictAt(index));
43 EXPECT_EQ(stream_val, arr->GetStreamAt(index)); 42 EXPECT_EQ(stream_val, arr->GetStreamAt(index));
44 } 43 }
45 44
46 } // namespace 45 } // namespace
47 46
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 EXPECT_STREQ(direct_obj_results[i], m_DirectObjs[i]->GetString().c_str()); 191 EXPECT_STREQ(direct_obj_results[i], m_DirectObjs[i]->GetString().c_str());
193 192
194 // Check indirect references. 193 // Check indirect references.
195 const char* indirect_obj_results[] = {"true", "1245", "\t\n", "space", 194 const char* indirect_obj_results[] = {"true", "1245", "\t\n", "space",
196 "", "", ""}; 195 "", "", ""};
197 for (size_t i = 0; i < m_RefObjs.size(); ++i) { 196 for (size_t i = 0; i < m_RefObjs.size(); ++i) {
198 EXPECT_STREQ(indirect_obj_results[i], m_RefObjs[i]->GetString().c_str()); 197 EXPECT_STREQ(indirect_obj_results[i], m_RefObjs[i]->GetString().c_str());
199 } 198 }
200 } 199 }
201 200
202 TEST_F(PDFObjectsTest, GetConstString) {
203 const char* direct_obj_results[] = {
204 nullptr, nullptr, nullptr, nullptr, "A simple test", "\t\n",
205 "space", nullptr, nullptr, nullptr, nullptr};
206 // Check for direct objects.
207 for (size_t i = 0; i < m_DirectObjs.size(); ++i) {
208 if (!direct_obj_results[i]) {
209 EXPECT_EQ(direct_obj_results[i],
210 m_DirectObjs[i]->GetConstString().c_str());
211 } else {
212 EXPECT_STREQ(direct_obj_results[i],
213 m_DirectObjs[i]->GetConstString().c_str());
214 }
215 }
216 // Check indirect references.
217 const char* indirect_obj_results[] = {nullptr, nullptr, "\t\n", "space",
218 nullptr, nullptr, nullptr};
219 for (size_t i = 0; i < m_RefObjs.size(); ++i) {
220 if (!indirect_obj_results[i]) {
221 EXPECT_EQ(nullptr, m_RefObjs[i]->GetConstString().c_str());
222 } else {
223 EXPECT_STREQ(indirect_obj_results[i],
224 m_RefObjs[i]->GetConstString().c_str());
225 }
226 }
227 }
228
229 TEST_F(PDFObjectsTest, GetUnicodeText) { 201 TEST_F(PDFObjectsTest, GetUnicodeText) {
230 const wchar_t* direct_obj_results[] = { 202 const wchar_t* direct_obj_results[] = {
231 L"", L"", L"", L"", L"A simple test", 203 L"", L"", L"", L"", L"A simple test",
232 L"\t\n", L"space", L"", L"", L"abcdefghijklmnopqrstuvwxyz", 204 L"\t\n", L"space", L"", L"", L"abcdefghijklmnopqrstuvwxyz",
233 L""}; 205 L""};
234 // Check for direct objects. 206 // Check for direct objects.
235 for (size_t i = 0; i < m_DirectObjs.size(); ++i) 207 for (size_t i = 0; i < m_DirectObjs.size(); ++i)
236 EXPECT_STREQ(direct_obj_results[i], 208 EXPECT_STREQ(direct_obj_results[i],
237 m_DirectObjs[i]->GetUnicodeText().c_str()); 209 m_DirectObjs[i]->GetUnicodeText().c_str());
238 210
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after
661 // The data buffer will be owned by stream object, so it needs to be 633 // The data buffer will be owned by stream object, so it needs to be
662 // dynamically allocated. 634 // dynamically allocated.
663 size_t buf_size = sizeof(data); 635 size_t buf_size = sizeof(data);
664 uint8_t* buf = reinterpret_cast<uint8_t*>(malloc(buf_size)); 636 uint8_t* buf = reinterpret_cast<uint8_t*>(malloc(buf_size));
665 memcpy(buf, data, buf_size); 637 memcpy(buf, data, buf_size);
666 CPDF_Stream* stream_val = new CPDF_Stream(buf, buf_size, stream_dict); 638 CPDF_Stream* stream_val = new CPDF_Stream(buf, buf_size, stream_dict);
667 arr->InsertAt(13, stream_val); 639 arr->InsertAt(13, stream_val);
668 const char* const expected_str[] = { 640 const char* const expected_str[] = {
669 "true", "false", "0", "-1234", "2345", "0.05", "", 641 "true", "false", "0", "-1234", "2345", "0.05", "",
670 "It is a test!", "NAME", "test", "", "", "", ""}; 642 "It is a test!", "NAME", "test", "", "", "", ""};
671 const char* const expected_cstr[] = {
672 nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr,
673 "It is a test!", "NAME", "test", nullptr, nullptr, nullptr, nullptr};
674 const int expected_int[] = {1, 0, 0, -1234, 2345, 0, 0, 643 const int expected_int[] = {1, 0, 0, -1234, 2345, 0, 0,
675 0, 0, 0, 0, 0, 0, 0}; 644 0, 0, 0, 0, 0, 0, 0};
676 const float expected_float[] = {0, 0, 0, -1234, 2345, 0.05f, 0, 645 const float expected_float[] = {0, 0, 0, -1234, 2345, 0.05f, 0,
677 0, 0, 0, 0, 0, 0, 0}; 646 0, 0, 0, 0, 0, 0, 0};
678 for (size_t i = 0; i < arr->GetCount(); ++i) { 647 for (size_t i = 0; i < arr->GetCount(); ++i) {
679 EXPECT_STREQ(expected_str[i], arr->GetStringAt(i).c_str()); 648 EXPECT_STREQ(expected_str[i], arr->GetStringAt(i).c_str());
680 EXPECT_STREQ(expected_cstr[i], arr->GetConstStringAt(i).c_str());
681 EXPECT_EQ(expected_int[i], arr->GetIntegerAt(i)); 649 EXPECT_EQ(expected_int[i], arr->GetIntegerAt(i));
682 EXPECT_EQ(expected_float[i], arr->GetNumberAt(i)); 650 EXPECT_EQ(expected_float[i], arr->GetNumberAt(i));
683 EXPECT_EQ(expected_float[i], arr->GetFloatAt(i)); 651 EXPECT_EQ(expected_float[i], arr->GetFloatAt(i));
684 if (i == 11) 652 if (i == 11)
685 EXPECT_EQ(arr_val, arr->GetArrayAt(i)); 653 EXPECT_EQ(arr_val, arr->GetArrayAt(i));
686 else 654 else
687 EXPECT_EQ(nullptr, arr->GetArrayAt(i)); 655 EXPECT_EQ(nullptr, arr->GetArrayAt(i));
688 if (i == 13) { 656 if (i == 13) {
689 EXPECT_EQ(stream_dict, arr->GetDictAt(i)); 657 EXPECT_EQ(stream_dict, arr->GetDictAt(i));
690 EXPECT_EQ(stream_val, arr->GetStreamAt(i)); 658 EXPECT_EQ(stream_val, arr->GetStreamAt(i));
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
767 EXPECT_EQ(arr->GetCount(), arr1->GetCount()); 735 EXPECT_EQ(arr->GetCount(), arr1->GetCount());
768 for (size_t i = 0; i < arr->GetCount(); ++i) { 736 for (size_t i = 0; i < arr->GetCount(); ++i) {
769 EXPECT_EQ(CPDF_Object::REFERENCE, arr->GetObjectAt(i)->GetType()); 737 EXPECT_EQ(CPDF_Object::REFERENCE, arr->GetObjectAt(i)->GetType());
770 EXPECT_EQ(indirect_objs[i], arr->GetObjectAt(i)->GetDirect()); 738 EXPECT_EQ(indirect_objs[i], arr->GetObjectAt(i)->GetDirect());
771 EXPECT_EQ(indirect_objs[i], arr->GetDirectObjectAt(i)); 739 EXPECT_EQ(indirect_objs[i], arr->GetDirectObjectAt(i));
772 EXPECT_EQ(CPDF_Object::REFERENCE, arr1->GetObjectAt(i)->GetType()); 740 EXPECT_EQ(CPDF_Object::REFERENCE, arr1->GetObjectAt(i)->GetType());
773 EXPECT_EQ(indirect_objs[i], arr1->GetObjectAt(i)->GetDirect()); 741 EXPECT_EQ(indirect_objs[i], arr1->GetObjectAt(i)->GetDirect());
774 EXPECT_EQ(indirect_objs[i], arr1->GetDirectObjectAt(i)); 742 EXPECT_EQ(indirect_objs[i], arr1->GetDirectObjectAt(i));
775 } 743 }
776 } 744 }
OLDNEW
« no previous file with comments | « core/fpdfapi/fpdf_parser/cpdf_object.cpp ('k') | core/fpdfapi/fpdf_parser/cpdf_reference.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698