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

Unified Diff: webkit/fileapi/media/picasa/picasa_album_table_reader_unittest.cc

Issue 13529028: PicasaAlbumTableReader for Media Galleries API (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@0005-picasa-import-pmp-reader
Patch Set: Fix ifdef guard. Created 7 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 side-by-side diff with in-line comments
Download patch
Index: webkit/fileapi/media/picasa/picasa_album_table_reader_unittest.cc
diff --git a/webkit/fileapi/media/picasa/picasa_album_table_reader_unittest.cc b/webkit/fileapi/media/picasa/picasa_album_table_reader_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..a067264cba5bfa6c9be273301b5fff42fac32dac
--- /dev/null
+++ b/webkit/fileapi/media/picasa/picasa_album_table_reader_unittest.cc
@@ -0,0 +1,90 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "testing/gtest/include/gtest/gtest.h"
+#include "webkit/fileapi/media/picasa/picasa_album_table_reader.h"
+#include "webkit/fileapi/media/picasa/pmp_constants.h"
+#include "webkit/fileapi/media/picasa/pmp_test_helper.h"
+
+namespace {
+
+using picasaimport::PmpTestHelper;
+using picasaimport::PMP_TYPE_UINT32;
+
+TEST(PicasaAlbumTableReaderTest, FoldersAndAlbums) {
+ PmpTestHelper test_helper(picasaimport::kPicasaAlbumTableName);
+ ASSERT_TRUE(test_helper.Init());
+
+ int test_time_delta = 100;
+
+ std::vector<uint32> category_vector;
+ category_vector.push_back(picasaimport::kAlbumCategoryFolder);
+ category_vector.push_back(picasaimport::kAlbumCategoryInvalid);
+ category_vector.push_back(picasaimport::kAlbumCategoryUserAlbum);
+
+ std::vector<double> date_vector;
+ date_vector.push_back(0.0);
+ date_vector.push_back(0.0);
+ date_vector.push_back(0.0 + test_time_delta);
+
+ std::string test_folder_name = "Pix4dalulz";
+ std::string test_user_album_name = "Cats";
+
+ base::FilePath test_folder_path =
+ base::FilePath(base::FilePath::FromUTF8Unsafe("C:\\Pix4dalulz"));
Greg Billock 2013/04/12 23:17:58 Get the base dir from the test machinery with Scop
tommycli 2013/04/12 23:44:04 This is supposed to represent a location where the
+
+ // Only folders require filenames. Tests handling of different length columns.
+ std::vector<std::string> filename_vector;
+ filename_vector.push_back(test_folder_path.AsUTF8Unsafe());
+
+ std::vector<std::string> name_vector;
+ name_vector.push_back(test_folder_name);
+ name_vector.push_back("");
+ name_vector.push_back(test_user_album_name);
+
+ std::vector<std::string> token_vector;
+ token_vector.push_back("");
+ token_vector.push_back("");
+ token_vector.push_back(std::string(picasaimport::kAlbumTokenPrefix) + "uid3");
+
+ std::vector<std::string> uid_vector;
+ uid_vector.push_back("uid1");
+ uid_vector.push_back("uid2");
+ uid_vector.push_back("uid3");
+
+ ASSERT_TRUE(test_helper.WriteColumnFileFromVector(
+ "category", picasaimport::PMP_TYPE_UINT32, category_vector));
+ ASSERT_TRUE(test_helper.WriteColumnFileFromVector(
+ "date", picasaimport::PMP_TYPE_DOUBLE64, date_vector));
+ ASSERT_TRUE(test_helper.WriteColumnFileFromVector(
+ "filename", picasaimport::PMP_TYPE_STRING, filename_vector));
+ ASSERT_TRUE(test_helper.WriteColumnFileFromVector(
+ "name", picasaimport::PMP_TYPE_STRING, name_vector));
+ ASSERT_TRUE(test_helper.WriteColumnFileFromVector(
+ "token", picasaimport::PMP_TYPE_STRING, token_vector));
+ ASSERT_TRUE(test_helper.WriteColumnFileFromVector(
+ "uid", picasaimport::PMP_TYPE_STRING, uid_vector));
+
+ picasaimport::PicasaAlbumTableReader reader(test_helper.GetTempDirPath());
+
+ ASSERT_TRUE(reader.Init());
+
+ const std::vector<picasaimport::FolderInfo>& folders = reader.folders();
+ const std::vector<picasaimport::AlbumInfo>& user_albums =
+ reader.user_albums();
+
+ ASSERT_EQ(1u, folders.size());
+ ASSERT_EQ(1u, user_albums.size());
+
+ EXPECT_EQ(test_folder_name, folders[0].name);
+ EXPECT_EQ(test_user_album_name, user_albums[0].name);
+
+ EXPECT_EQ(test_folder_path, folders[0].path);
+
+ base::TimeDelta time_delta = user_albums[0].timestamp - folders[0].timestamp;
+
+ EXPECT_EQ(test_time_delta, time_delta.InDays());
+}
+
+} // namespace

Powered by Google App Engine
This is Rietveld 408576698