15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/chromeos/drive/resource_entry_conversion.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 7a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#include "base/time/time.h" 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/chromeos/drive/drive.pb.h" 9f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "chrome/browser/drive/drive_api_util.h" 10f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "google_apis/drive/drive_api_parser.h" 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "testing/gtest/include/gtest/gtest.h" 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace drive { 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)namespace { 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 17f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)base::Time GetTestTime() { 18f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) // 2011-12-14-T00:40:47.330Z 19f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) base::Time::Exploded exploded; 20f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.year = 2011; 21f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.month = 12; 22f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.day_of_month = 14; 23f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.day_of_week = 2; // Tuesday 24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.hour = 0; 25f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.minute = 40; 26f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.second = 47; 27f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) exploded.millisecond = 330; 28f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) return base::Time::FromUTCExploded(exploded); 29f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 30f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 31f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} // namespace 32f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 33f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)TEST(ResourceEntryConversionTest, ConvertToResourceEntry_File) { 34f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource file_resource; 35f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_title("File 1.mp3"); 36f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_file_id("resource_id"); 37f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_created_date(GetTestTime()); 38f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_modified_date( 39f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(10)); 40f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_mime_type("audio/mpeg"); 41f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_alternate_link(GURL("https://file_link_alternate")); 42f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_file_size(892721); 43f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_md5_checksum("3b4382ebefec6e743578c76bbd0575ce"); 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 45558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch ResourceEntry entry; 46424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) std::string parent_resource_id; 47f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 48f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource, &entry, &parent_resource_id)); 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 50f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title(), entry.title()); 51f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title(), entry.base_name()); 52f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.file_id(), entry.resource_id()); 535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) EXPECT_EQ("", parent_resource_id); 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.deleted()); 56c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.shared_with_me()); 57a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) EXPECT_FALSE(entry.shared()); 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 59f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.modified_date().ToInternalValue(), 60c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_modified()); 615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Last accessed value equal to 0 means that the file has never been viewed. 62c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_EQ(0, entry.file_info().last_accessed()); 63f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.created_date().ToInternalValue(), 64c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().creation_time()); 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 66f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.mime_type(), 67c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_specific_info().content_mime_type()); 68c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.file_specific_info().is_hosted_document()); 69f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.alternate_link().spec(), 70c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_specific_info().alternate_url()); 715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Regular file specific fields. 73f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.file_size(), entry.file_info().size()); 74f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.md5_checksum(), entry.file_specific_info().md5()); 75c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.file_info().is_directory()); 765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST(ResourceEntryConversionTest, 79f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertFileResourceToResourceEntry_HostedDocument) { 80f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource file_resource; 81f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_title("Document 1"); 82f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_file_id("resource_id"); 83f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_created_date(GetTestTime()); 84f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_modified_date( 85f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(10)); 86f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_last_viewed_by_me_date( 87f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(20)); 88f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_mime_type(util::kGoogleDocumentMimeType); 89f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_alternate_link(GURL("https://file_link_alternate")); 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 91558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch ResourceEntry entry; 92424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) std::string parent_resource_id; 93f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 94f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource, &entry, &parent_resource_id)); 955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 96f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title(), entry.title()); 97f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title() + ".gdoc", 98f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry.base_name()); // The suffix added. 99c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_EQ(".gdoc", entry.file_specific_info().document_extension()); 100f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.file_id(), entry.resource_id()); 1015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) EXPECT_EQ("", parent_resource_id); 1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 103c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.deleted()); 104c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.shared_with_me()); 105a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) EXPECT_FALSE(entry.shared()); 1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 107f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.modified_date().ToInternalValue(), 108c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_modified()); 109f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.last_viewed_by_me_date().ToInternalValue(), 110c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_accessed()); 111f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.created_date().ToInternalValue(), 112c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().creation_time()); 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 114f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.mime_type(), 115c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_specific_info().content_mime_type()); 116c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_TRUE(entry.file_specific_info().is_hosted_document()); 117f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.alternate_link().spec(), 118c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_specific_info().alternate_url()); 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The size should be 0 for a hosted document. 1213551c9c881056c480085172ff9840cab31610854Torne (Richard Coles) EXPECT_EQ(0, entry.file_info().size()); 122c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.file_info().is_directory()); 1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST(ResourceEntryConversionTest, 126f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertFileResourceToResourceEntry_Directory) { 127f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource file_resource; 128f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_title("Folder"); 129f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_file_id("resource_id"); 130f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_created_date(GetTestTime()); 131f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_modified_date( 132f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(10)); 133f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_last_viewed_by_me_date( 134f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(20)); 135f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_mime_type(util::kDriveFolderMimeType); 136f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 137f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::ParentReference parent; 138f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) parent.set_file_id("parent_resource_id"); 139f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.mutable_parents()->push_back(parent); 1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 141558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch ResourceEntry entry; 142424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) std::string parent_resource_id; 143f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 144f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource, &entry, &parent_resource_id)); 1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 146f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title(), entry.title()); 147f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title(), entry.base_name()); 148f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.file_id(), entry.resource_id()); 1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The parent resource ID should be obtained as this is a sub directory 1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // under a non-root directory. 151f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(parent.file_id(), parent_resource_id); 1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 153c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.deleted()); 154c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.shared_with_me()); 155a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) EXPECT_FALSE(entry.shared()); 1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 157f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.modified_date().ToInternalValue(), 158c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_modified()); 159f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.last_viewed_by_me_date().ToInternalValue(), 160c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_accessed()); 161f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.created_date().ToInternalValue(), 162c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().creation_time()); 1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 164c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_TRUE(entry.file_info().is_directory()); 1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST(ResourceEntryConversionTest, 168f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertFileResourceToResourceEntry_DeletedHostedDocument) { 169f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource file_resource; 170f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_title("Document 1"); 171f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_file_id("resource_id"); 172f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_created_date(GetTestTime()); 173f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_modified_date( 174f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(10)); 175f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_last_viewed_by_me_date( 176f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetTestTime() + base::TimeDelta::FromSeconds(20)); 177f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_mime_type(util::kGoogleDocumentMimeType); 178f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_alternate_link(GURL("https://file_link_alternate")); 179f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.mutable_labels()->set_trashed(true); 1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 181558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch ResourceEntry entry; 182424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) std::string parent_resource_id; 183f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 184f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource, &entry, &parent_resource_id)); 1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 186f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title(), entry.title()); 187f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.title() + ".gdoc", entry.base_name()); 188f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.file_id(), entry.resource_id()); 1895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) EXPECT_EQ("", parent_resource_id); 1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 191c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_TRUE(entry.deleted()); // The document was deleted. 192c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_FALSE(entry.shared_with_me()); 193a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) EXPECT_FALSE(entry.shared()); 1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 195f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.modified_date().ToInternalValue(), 196c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_modified()); 197f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.last_viewed_by_me_date().ToInternalValue(), 198c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().last_accessed()); 199f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.created_date().ToInternalValue(), 200c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_info().creation_time()); 2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 202f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.mime_type(), 203c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_specific_info().content_mime_type()); 204c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_TRUE(entry.file_specific_info().is_hosted_document()); 205f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource.alternate_link().spec(), 206c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) entry.file_specific_info().alternate_url()); 2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // The size should be 0 for a hosted document. 2093551c9c881056c480085172ff9840cab31610854Torne (Richard Coles) EXPECT_EQ(0, entry.file_info().size()); 210c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} 211c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 212f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)TEST(ResourceEntryConversionTest, ConvertChangeResourceToResourceEntry) { 213f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::ChangeResource change_resource; 214f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_file(make_scoped_ptr(new google_apis::FileResource)); 215f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_file_id("resource_id"); 216f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_modification_date(GetTestTime()); 217f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 218f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource* file_resource = change_resource.mutable_file(); 219f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource->set_title("File 1.mp3"); 220f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource->set_file_id("resource_id"); 221f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 222f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ResourceEntry entry; 223f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) std::string parent_resource_id; 224f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertChangeResourceToResourceEntry( 225f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource, &entry, &parent_resource_id)); 226f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 227f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(change_resource.file_id(), entry.resource_id()); 228f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(change_resource.modification_date().ToInternalValue(), 229f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry.modification_date()); 230f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 231f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource->title(), entry.title()); 232f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource->title(), entry.base_name()); 233f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ("", parent_resource_id); 234f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 235f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_FALSE(entry.deleted()); 236f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 237f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 238f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)TEST(ResourceEntryConversionTest, 239f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertChangeResourceToResourceEntry_Trashed) { 240f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::ChangeResource change_resource; 241f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_file(make_scoped_ptr(new google_apis::FileResource)); 242f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_file_id("resource_id"); 243f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_modification_date(GetTestTime()); 244f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 245f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource* file_resource = change_resource.mutable_file(); 246f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource->set_title("File 1.mp3"); 247f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource->set_file_id("resource_id"); 248f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource->mutable_labels()->set_trashed(true); 249f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 250f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ResourceEntry entry; 251f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) std::string parent_resource_id; 252f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertChangeResourceToResourceEntry( 253f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource, &entry, &parent_resource_id)); 254f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 255f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(change_resource.file_id(), entry.resource_id()); 256f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(change_resource.modification_date().ToInternalValue(), 257f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry.modification_date()); 258f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 259f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource->title(), entry.title()); 260f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(file_resource->title(), entry.base_name()); 261f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ("", parent_resource_id); 262f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 263f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(entry.deleted()); 264f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 265f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 266c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)TEST(ResourceEntryConversionTest, 267f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertChangeResourceToResourceEntry_Deleted) { 268f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::ChangeResource change_resource; 269f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_deleted(true); 270f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_file_id("resource_id"); 271f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource.set_modification_date(GetTestTime()); 272c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 273f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ResourceEntry entry; 274f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) std::string parent_resource_id; 275f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertChangeResourceToResourceEntry( 276f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) change_resource, &entry, &parent_resource_id)); 277f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 278f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(change_resource.file_id(), entry.resource_id()); 279f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ("", parent_resource_id); 280f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 281f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(entry.deleted()); 282f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 283f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_EQ(change_resource.modification_date().ToInternalValue(), 284f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry.modification_date()); 285f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 286f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 287f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)TEST(ResourceEntryConversionTest, 288f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertFileResourceToResourceEntry_SharedWithMeEntry) { 289f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource file_resource; 290f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_shared(true); 291f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource.set_shared_with_me_date(GetTestTime()); 292c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 293558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch ResourceEntry entry; 294424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) std::string parent_resource_id; 295f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 296f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) file_resource, &entry, &parent_resource_id)); 297c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) EXPECT_TRUE(entry.shared_with_me()); 298a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) EXPECT_TRUE(entry.shared()); 2995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 301a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)TEST(ResourceEntryConversionTest, ToPlatformFileInfo) { 302a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) ResourceEntry entry; 303a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) entry.mutable_file_info()->set_size(12345); 304a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) entry.mutable_file_info()->set_is_directory(true); 305a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) entry.mutable_file_info()->set_is_symbolic_link(true); 306a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) entry.mutable_file_info()->set_creation_time(999); 307a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) entry.mutable_file_info()->set_last_modified(123456789); 308a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) entry.mutable_file_info()->set_last_accessed(987654321); 309a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) 3105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) base::File::Info file_info; 3115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) ConvertResourceEntryToFileInfo(entry, &file_info); 312a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) EXPECT_EQ(entry.file_info().size(), file_info.size); 313a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) EXPECT_EQ(entry.file_info().is_directory(), file_info.is_directory); 314a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) EXPECT_EQ(entry.file_info().is_symbolic_link(), file_info.is_symbolic_link); 315a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) EXPECT_EQ(base::Time::FromInternalValue(entry.file_info().creation_time()), 316a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) file_info.creation_time); 317a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) EXPECT_EQ(base::Time::FromInternalValue(entry.file_info().last_modified()), 318a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) file_info.last_modified); 319a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) EXPECT_EQ(base::Time::FromInternalValue(entry.file_info().last_accessed()), 320a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) file_info.last_accessed); 321a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)} 322a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles) 323f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)TEST(ResourceEntryConversionTest, 324f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) ConvertFileResourceToResourceEntry_ImageMediaMetadata) { 325f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource entry_all_fields; 326f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource entry_zero_fields; 327f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) google_apis::FileResource entry_no_fields; 3284e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 329f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_all_fields.mutable_image_media_metadata()->set_width(640); 330f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_all_fields.mutable_image_media_metadata()->set_height(480); 331f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_all_fields.mutable_image_media_metadata()->set_rotation(90); 3324e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 333f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_zero_fields.mutable_image_media_metadata()->set_width(0); 334f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_zero_fields.mutable_image_media_metadata()->set_height(0); 335f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_zero_fields.mutable_image_media_metadata()->set_rotation(0); 3364e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 3374e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) { 3384e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) ResourceEntry entry; 3394e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) std::string parent_resource_id; 340f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 341f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_all_fields, &entry, &parent_resource_id)); 3424e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_EQ(640, entry.file_specific_info().image_width()); 3434e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_EQ(480, entry.file_specific_info().image_height()); 3444e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_EQ(90, entry.file_specific_info().image_rotation()); 3454e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) } 3464e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) { 3474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) ResourceEntry entry; 3484e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) std::string parent_resource_id; 349f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 350f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_zero_fields, &entry, &parent_resource_id)); 3514e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_TRUE(entry.file_specific_info().has_image_width()); 3524e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_TRUE(entry.file_specific_info().has_image_height()); 3534e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_TRUE(entry.file_specific_info().has_image_rotation()); 3544e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_EQ(0, entry.file_specific_info().image_width()); 3554e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_EQ(0, entry.file_specific_info().image_height()); 3564e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_EQ(0, entry.file_specific_info().image_rotation()); 3574e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) } 3584e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) { 3594e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) ResourceEntry entry; 3604e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) std::string parent_resource_id; 361f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) EXPECT_TRUE(ConvertFileResourceToResourceEntry( 362f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) entry_no_fields, &entry, &parent_resource_id)); 3634e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_FALSE(entry.file_specific_info().has_image_width()); 3644e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_FALSE(entry.file_specific_info().has_image_height()); 3654e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) EXPECT_FALSE(entry.file_specific_info().has_image_rotation()); 3664e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) } 3674e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} 3684e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace drive 370