| OLD | NEW |
| 1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2008 The Chromium 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 "base/data_pack.h" | 5 #include "base/data_pack.h" |
| 6 | 6 |
| 7 #include "base/file_path.h" | 7 #include "base/file_path.h" |
| 8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
| 9 #include "base/string_piece.h" | 9 #include "base/string_piece.h" |
| 10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
| 11 | 11 |
| 12 class DataPackTest : public testing::Test { | 12 class DataPackTest : public testing::Test { |
| 13 public: | 13 public: |
| 14 DataPackTest() { | 14 DataPackTest() { |
| 15 PathService::Get(base::DIR_SOURCE_ROOT, &data_path_); | 15 PathService::Get(base::DIR_SOURCE_ROOT, &data_path_); |
| 16 data_path_ = data_path_.Append( | 16 data_path_ = data_path_.Append( |
| 17 FILE_PATH_LITERAL("base/data/data_pack_unittest/sample.pak")); | 17 FILE_PATH_LITERAL("base/data/data_pack_unittest/sample.pak")); |
| 18 } | 18 } |
| 19 | 19 |
| 20 FilePath data_path_; | 20 FilePath data_path_; |
| 21 }; | 21 }; |
| 22 | 22 |
| 23 TEST_F(DataPackTest, Load) { | 23 TEST_F(DataPackTest, Load) { |
| 24 base::DataPack pack; | 24 base::DataPack pack; |
| 25 ASSERT_TRUE(pack.Load(data_path_)); | 25 ASSERT_TRUE(pack.Load(data_path_)); |
| 26 | 26 |
| 27 StringPiece data; | 27 base::StringPiece data; |
| 28 ASSERT_TRUE(pack.Get(4, &data)); | 28 ASSERT_TRUE(pack.Get(4, &data)); |
| 29 EXPECT_EQ("this is id 4", data); | 29 EXPECT_EQ("this is id 4", data); |
| 30 ASSERT_TRUE(pack.Get(6, &data)); | 30 ASSERT_TRUE(pack.Get(6, &data)); |
| 31 EXPECT_EQ("this is id 6", data); | 31 EXPECT_EQ("this is id 6", data); |
| 32 | 32 |
| 33 // Try reading zero-length data blobs, just in case. | 33 // Try reading zero-length data blobs, just in case. |
| 34 ASSERT_TRUE(pack.Get(1, &data)); | 34 ASSERT_TRUE(pack.Get(1, &data)); |
| 35 EXPECT_EQ(0U, data.length()); | 35 EXPECT_EQ(0U, data.length()); |
| 36 ASSERT_TRUE(pack.Get(10, &data)); | 36 ASSERT_TRUE(pack.Get(10, &data)); |
| 37 EXPECT_EQ(0U, data.length()); | 37 EXPECT_EQ(0U, data.length()); |
| 38 | 38 |
| 39 // Try looking up an invalid key. | 39 // Try looking up an invalid key. |
| 40 ASSERT_FALSE(pack.Get(140, &data)); | 40 ASSERT_FALSE(pack.Get(140, &data)); |
| 41 } | 41 } |
| OLD | NEW |