| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/drive/fake_drive_service.h" | 5 #include "chrome/browser/drive/fake_drive_service.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/file_util.h" | 10 #include "base/file_util.h" |
| 11 #include "base/files/scoped_temp_dir.h" | 11 #include "base/files/scoped_temp_dir.h" |
| 12 #include "base/md5.h" |
| 12 #include "base/run_loop.h" | 13 #include "base/run_loop.h" |
| 13 #include "base/stl_util.h" | 14 #include "base/stl_util.h" |
| 14 #include "base/strings/stringprintf.h" | 15 #include "base/strings/stringprintf.h" |
| 15 #include "base/strings/utf_string_conversions.h" | 16 #include "base/strings/utf_string_conversions.h" |
| 16 #include "chrome/browser/google_apis/drive_api_parser.h" | 17 #include "chrome/browser/google_apis/drive_api_parser.h" |
| 17 #include "chrome/browser/google_apis/gdata_wapi_parser.h" | 18 #include "chrome/browser/google_apis/gdata_wapi_parser.h" |
| 18 #include "chrome/browser/google_apis/gdata_wapi_requests.h" | 19 #include "chrome/browser/google_apis/gdata_wapi_requests.h" |
| 19 #include "chrome/browser/google_apis/test_util.h" | 20 #include "chrome/browser/google_apis/test_util.h" |
| 20 #include "content/public/test/test_browser_thread_bundle.h" | 21 #include "content/public/test/test_browser_thread_bundle.h" |
| 21 #include "testing/gtest/include/gtest/gtest.h" | 22 #include "testing/gtest/include/gtest/gtest.h" |
| (...skipping 1607 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1629 fake_service_.InitiateUploadExistingFile( | 1630 fake_service_.InitiateUploadExistingFile( |
| 1630 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), | 1631 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), |
| 1631 "text/plain", | 1632 "text/plain", |
| 1632 13, | 1633 13, |
| 1633 "file:2_file_resource_id", | 1634 "file:2_file_resource_id", |
| 1634 "\"HhMOFgxXHit7ImBr\"", | 1635 "\"HhMOFgxXHit7ImBr\"", |
| 1635 test_util::CreateCopyResultCallback(&error, &upload_location)); | 1636 test_util::CreateCopyResultCallback(&error, &upload_location)); |
| 1636 base::RunLoop().RunUntilIdle(); | 1637 base::RunLoop().RunUntilIdle(); |
| 1637 | 1638 |
| 1638 EXPECT_EQ(HTTP_SUCCESS, error); | 1639 EXPECT_EQ(HTTP_SUCCESS, error); |
| 1639 EXPECT_EQ(GURL("https://2_file_link_resumable_create_media?mode=existing"), | 1640 EXPECT_TRUE(upload_location.is_valid()); |
| 1640 upload_location); | |
| 1641 } | 1641 } |
| 1642 | 1642 |
| 1643 TEST_F(FakeDriveServiceTest, ResumeUpload_Offline) { | 1643 TEST_F(FakeDriveServiceTest, ResumeUpload_Offline) { |
| 1644 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1644 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1645 "chromeos/gdata/root_feed.json")); | 1645 "chromeos/gdata/root_feed.json")); |
| 1646 | 1646 |
| 1647 GDataErrorCode error = GDATA_OTHER_ERROR; | 1647 GDataErrorCode error = GDATA_OTHER_ERROR; |
| 1648 GURL upload_location; | 1648 GURL upload_location; |
| 1649 fake_service_.InitiateUploadNewFile( | 1649 fake_service_.InitiateUploadNewFile( |
| 1650 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), | 1650 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1703 base::FilePath(), | 1703 base::FilePath(), |
| 1704 test_util::CreateCopyResultCallback(&response, &entry), | 1704 test_util::CreateCopyResultCallback(&response, &entry), |
| 1705 ProgressCallback()); | 1705 ProgressCallback()); |
| 1706 base::RunLoop().RunUntilIdle(); | 1706 base::RunLoop().RunUntilIdle(); |
| 1707 | 1707 |
| 1708 EXPECT_EQ(HTTP_NOT_FOUND, response.code); | 1708 EXPECT_EQ(HTTP_NOT_FOUND, response.code); |
| 1709 EXPECT_FALSE(entry.get()); | 1709 EXPECT_FALSE(entry.get()); |
| 1710 } | 1710 } |
| 1711 | 1711 |
| 1712 TEST_F(FakeDriveServiceTest, ResumeUpload_ExistingFile) { | 1712 TEST_F(FakeDriveServiceTest, ResumeUpload_ExistingFile) { |
| 1713 base::ScopedTempDir temp_dir; |
| 1714 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| 1715 base::FilePath local_file_path = |
| 1716 temp_dir.path().Append(FILE_PATH_LITERAL("File 1.txt")); |
| 1717 std::string contents("hogefugapiyo"); |
| 1718 ASSERT_TRUE(test_util::WriteStringToFile(local_file_path, contents)); |
| 1719 |
| 1713 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1720 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1714 "chromeos/gdata/root_feed.json")); | 1721 "chromeos/gdata/root_feed.json")); |
| 1715 | 1722 |
| 1716 GDataErrorCode error = GDATA_OTHER_ERROR; | 1723 GDataErrorCode error = GDATA_OTHER_ERROR; |
| 1717 GURL upload_location; | 1724 GURL upload_location; |
| 1718 fake_service_.InitiateUploadExistingFile( | 1725 fake_service_.InitiateUploadExistingFile( |
| 1719 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), | 1726 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), |
| 1720 "text/plain", | 1727 "text/plain", |
| 1721 15, | 1728 contents.size(), |
| 1722 "file:2_file_resource_id", | 1729 "file:2_file_resource_id", |
| 1723 "\"HhMOFgxXHit7ImBr\"", | 1730 "\"HhMOFgxXHit7ImBr\"", |
| 1724 test_util::CreateCopyResultCallback(&error, &upload_location)); | 1731 test_util::CreateCopyResultCallback(&error, &upload_location)); |
| 1725 base::RunLoop().RunUntilIdle(); | 1732 base::RunLoop().RunUntilIdle(); |
| 1726 | 1733 |
| 1727 ASSERT_EQ(HTTP_SUCCESS, error); | 1734 ASSERT_EQ(HTTP_SUCCESS, error); |
| 1728 | 1735 |
| 1729 UploadRangeResponse response; | 1736 UploadRangeResponse response; |
| 1730 scoped_ptr<ResourceEntry> entry; | 1737 scoped_ptr<ResourceEntry> entry; |
| 1731 std::vector<test_util::ProgressInfo> upload_progress_values; | 1738 std::vector<test_util::ProgressInfo> upload_progress_values; |
| 1732 fake_service_.ResumeUpload( | 1739 fake_service_.ResumeUpload( |
| 1733 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), | 1740 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), |
| 1734 upload_location, | 1741 upload_location, |
| 1735 0, 13, 15, "text/plain", | 1742 0, contents.size() / 2, contents.size(), "text/plain", |
| 1736 base::FilePath(), | 1743 local_file_path, |
| 1737 test_util::CreateCopyResultCallback(&response, &entry), | 1744 test_util::CreateCopyResultCallback(&response, &entry), |
| 1738 base::Bind(&test_util::AppendProgressCallbackResult, | 1745 base::Bind(&test_util::AppendProgressCallbackResult, |
| 1739 &upload_progress_values)); | 1746 &upload_progress_values)); |
| 1740 base::RunLoop().RunUntilIdle(); | 1747 base::RunLoop().RunUntilIdle(); |
| 1741 | 1748 |
| 1742 EXPECT_EQ(HTTP_RESUME_INCOMPLETE, response.code); | 1749 EXPECT_EQ(HTTP_RESUME_INCOMPLETE, response.code); |
| 1743 EXPECT_FALSE(entry.get()); | 1750 EXPECT_FALSE(entry.get()); |
| 1744 ASSERT_TRUE(!upload_progress_values.empty()); | 1751 ASSERT_TRUE(!upload_progress_values.empty()); |
| 1745 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); | 1752 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); |
| 1746 EXPECT_LE(0, upload_progress_values.front().first); | 1753 EXPECT_LE(0, upload_progress_values.front().first); |
| 1747 EXPECT_GE(13, upload_progress_values.back().first); | 1754 EXPECT_GE(static_cast<int64>(contents.size() / 2), |
| 1755 upload_progress_values.back().first); |
| 1748 | 1756 |
| 1749 upload_progress_values.clear(); | 1757 upload_progress_values.clear(); |
| 1750 fake_service_.ResumeUpload( | 1758 fake_service_.ResumeUpload( |
| 1751 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), | 1759 base::FilePath(FILE_PATH_LITERAL("drive/File 1.txt")), |
| 1752 upload_location, | 1760 upload_location, |
| 1753 13, 15, 15, "text/plain", | 1761 contents.size() / 2, contents.size(), contents.size(), "text/plain", |
| 1754 base::FilePath(), | 1762 local_file_path, |
| 1755 test_util::CreateCopyResultCallback(&response, &entry), | 1763 test_util::CreateCopyResultCallback(&response, &entry), |
| 1756 base::Bind(&test_util::AppendProgressCallbackResult, | 1764 base::Bind(&test_util::AppendProgressCallbackResult, |
| 1757 &upload_progress_values)); | 1765 &upload_progress_values)); |
| 1758 base::RunLoop().RunUntilIdle(); | 1766 base::RunLoop().RunUntilIdle(); |
| 1759 | 1767 |
| 1760 EXPECT_EQ(HTTP_SUCCESS, response.code); | 1768 EXPECT_EQ(HTTP_SUCCESS, response.code); |
| 1761 EXPECT_TRUE(entry.get()); | 1769 EXPECT_TRUE(entry.get()); |
| 1762 EXPECT_EQ(15L, entry->file_size()); | 1770 EXPECT_EQ(static_cast<int64>(contents.size()), |
| 1771 entry->file_size()); |
| 1763 EXPECT_TRUE(Exists(entry->resource_id())); | 1772 EXPECT_TRUE(Exists(entry->resource_id())); |
| 1764 ASSERT_TRUE(!upload_progress_values.empty()); | 1773 ASSERT_TRUE(!upload_progress_values.empty()); |
| 1765 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); | 1774 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); |
| 1766 EXPECT_LE(0, upload_progress_values.front().first); | 1775 EXPECT_LE(0, upload_progress_values.front().first); |
| 1767 EXPECT_GE(2, upload_progress_values.back().first); | 1776 EXPECT_GE(static_cast<int64>(contents.size() - contents.size() / 2), |
| 1777 upload_progress_values.back().first); |
| 1778 EXPECT_EQ(base::MD5String(contents), entry->file_md5()); |
| 1768 } | 1779 } |
| 1769 | 1780 |
| 1770 TEST_F(FakeDriveServiceTest, ResumeUpload_NewFile) { | 1781 TEST_F(FakeDriveServiceTest, ResumeUpload_NewFile) { |
| 1782 base::ScopedTempDir temp_dir; |
| 1783 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| 1784 base::FilePath local_file_path = |
| 1785 temp_dir.path().Append(FILE_PATH_LITERAL("new file.foo")); |
| 1786 std::string contents("hogefugapiyo"); |
| 1787 ASSERT_TRUE(test_util::WriteStringToFile(local_file_path, contents)); |
| 1788 |
| 1771 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1789 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1772 "chromeos/gdata/root_feed.json")); | 1790 "chromeos/gdata/root_feed.json")); |
| 1773 | 1791 |
| 1774 GDataErrorCode error = GDATA_OTHER_ERROR; | 1792 GDataErrorCode error = GDATA_OTHER_ERROR; |
| 1775 GURL upload_location; | 1793 GURL upload_location; |
| 1776 fake_service_.InitiateUploadNewFile( | 1794 fake_service_.InitiateUploadNewFile( |
| 1777 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), | 1795 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), |
| 1778 "test/foo", | 1796 "test/foo", |
| 1779 15, | 1797 contents.size(), |
| 1780 "folder:1_folder_resource_id", | 1798 "folder:1_folder_resource_id", |
| 1781 "new file.foo", | 1799 "new file.foo", |
| 1782 test_util::CreateCopyResultCallback(&error, &upload_location)); | 1800 test_util::CreateCopyResultCallback(&error, &upload_location)); |
| 1783 base::RunLoop().RunUntilIdle(); | 1801 base::RunLoop().RunUntilIdle(); |
| 1784 | 1802 |
| 1785 EXPECT_EQ(HTTP_SUCCESS, error); | 1803 EXPECT_EQ(HTTP_SUCCESS, error); |
| 1786 EXPECT_FALSE(upload_location.is_empty()); | 1804 EXPECT_FALSE(upload_location.is_empty()); |
| 1787 EXPECT_NE(GURL("https://1_folder_resumable_create_media_link"), | 1805 EXPECT_NE(GURL("https://1_folder_resumable_create_media_link"), |
| 1788 upload_location); | 1806 upload_location); |
| 1789 | 1807 |
| 1790 UploadRangeResponse response; | 1808 UploadRangeResponse response; |
| 1791 scoped_ptr<ResourceEntry> entry; | 1809 scoped_ptr<ResourceEntry> entry; |
| 1792 std::vector<test_util::ProgressInfo> upload_progress_values; | 1810 std::vector<test_util::ProgressInfo> upload_progress_values; |
| 1793 fake_service_.ResumeUpload( | 1811 fake_service_.ResumeUpload( |
| 1794 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), | 1812 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), |
| 1795 upload_location, | 1813 upload_location, |
| 1796 0, 13, 15, "test/foo", | 1814 0, contents.size() / 2, contents.size(), "test/foo", |
| 1797 base::FilePath(), | 1815 local_file_path, |
| 1798 test_util::CreateCopyResultCallback(&response, &entry), | 1816 test_util::CreateCopyResultCallback(&response, &entry), |
| 1799 base::Bind(&test_util::AppendProgressCallbackResult, | 1817 base::Bind(&test_util::AppendProgressCallbackResult, |
| 1800 &upload_progress_values)); | 1818 &upload_progress_values)); |
| 1801 base::RunLoop().RunUntilIdle(); | 1819 base::RunLoop().RunUntilIdle(); |
| 1802 | 1820 |
| 1803 EXPECT_EQ(HTTP_RESUME_INCOMPLETE, response.code); | 1821 EXPECT_EQ(HTTP_RESUME_INCOMPLETE, response.code); |
| 1804 EXPECT_FALSE(entry.get()); | 1822 EXPECT_FALSE(entry.get()); |
| 1805 ASSERT_TRUE(!upload_progress_values.empty()); | 1823 ASSERT_TRUE(!upload_progress_values.empty()); |
| 1806 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); | 1824 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); |
| 1807 EXPECT_LE(0, upload_progress_values.front().first); | 1825 EXPECT_LE(0, upload_progress_values.front().first); |
| 1808 EXPECT_GE(13, upload_progress_values.back().first); | 1826 EXPECT_GE(static_cast<int64>(contents.size() / 2), |
| 1827 upload_progress_values.back().first); |
| 1809 | 1828 |
| 1810 upload_progress_values.clear(); | 1829 upload_progress_values.clear(); |
| 1811 fake_service_.ResumeUpload( | 1830 fake_service_.ResumeUpload( |
| 1812 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), | 1831 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1/new file.foo")), |
| 1813 upload_location, | 1832 upload_location, |
| 1814 13, 15, 15, "test/foo", | 1833 contents.size() / 2, contents.size(), contents.size(), "test/foo", |
| 1815 base::FilePath(), | 1834 local_file_path, |
| 1816 test_util::CreateCopyResultCallback(&response, &entry), | 1835 test_util::CreateCopyResultCallback(&response, &entry), |
| 1817 base::Bind(&test_util::AppendProgressCallbackResult, | 1836 base::Bind(&test_util::AppendProgressCallbackResult, |
| 1818 &upload_progress_values)); | 1837 &upload_progress_values)); |
| 1819 base::RunLoop().RunUntilIdle(); | 1838 base::RunLoop().RunUntilIdle(); |
| 1820 | 1839 |
| 1821 EXPECT_EQ(HTTP_CREATED, response.code); | 1840 EXPECT_EQ(HTTP_CREATED, response.code); |
| 1822 EXPECT_TRUE(entry.get()); | 1841 EXPECT_TRUE(entry.get()); |
| 1823 EXPECT_EQ(15L, entry->file_size()); | 1842 EXPECT_EQ(static_cast<int64>(contents.size()), entry->file_size()); |
| 1824 EXPECT_TRUE(Exists(entry->resource_id())); | 1843 EXPECT_TRUE(Exists(entry->resource_id())); |
| 1825 ASSERT_TRUE(!upload_progress_values.empty()); | 1844 ASSERT_TRUE(!upload_progress_values.empty()); |
| 1826 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); | 1845 EXPECT_TRUE(base::STLIsSorted(upload_progress_values)); |
| 1827 EXPECT_LE(0, upload_progress_values.front().first); | 1846 EXPECT_LE(0, upload_progress_values.front().first); |
| 1828 EXPECT_GE(2, upload_progress_values.back().first); | 1847 EXPECT_GE(static_cast<int64>(contents.size() - contents.size() / 2), |
| 1848 upload_progress_values.back().first); |
| 1849 EXPECT_EQ(base::MD5String(contents), entry->file_md5()); |
| 1829 } | 1850 } |
| 1830 | 1851 |
| 1831 TEST_F(FakeDriveServiceTest, AddNewFile_ToRootDirectory) { | 1852 TEST_F(FakeDriveServiceTest, AddNewFile_ToRootDirectory) { |
| 1832 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1853 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1833 "chromeos/gdata/root_feed.json")); | 1854 "chromeos/gdata/root_feed.json")); |
| 1834 ASSERT_TRUE(fake_service_.LoadAccountMetadataForWapi( | 1855 ASSERT_TRUE(fake_service_.LoadAccountMetadataForWapi( |
| 1835 "chromeos/gdata/account_metadata.json")); | 1856 "chromeos/gdata/account_metadata.json")); |
| 1836 | 1857 |
| 1837 int64 old_largest_change_id = GetLargestChangeByAboutResource(); | 1858 int64 old_largest_change_id = GetLargestChangeByAboutResource(); |
| 1838 | 1859 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 1857 EXPECT_EQ(kContentType, resource_entry->content_mime_type()); | 1878 EXPECT_EQ(kContentType, resource_entry->content_mime_type()); |
| 1858 EXPECT_EQ(static_cast<int64>(kContentData.size()), | 1879 EXPECT_EQ(static_cast<int64>(kContentData.size()), |
| 1859 resource_entry->file_size()); | 1880 resource_entry->file_size()); |
| 1860 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); | 1881 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); |
| 1861 EXPECT_EQ(kTitle, resource_entry->title()); | 1882 EXPECT_EQ(kTitle, resource_entry->title()); |
| 1862 EXPECT_TRUE(HasParent(resource_entry->resource_id(), | 1883 EXPECT_TRUE(HasParent(resource_entry->resource_id(), |
| 1863 fake_service_.GetRootResourceId())); | 1884 fake_service_.GetRootResourceId())); |
| 1864 // Should be incremented as a new directory was created. | 1885 // Should be incremented as a new directory was created. |
| 1865 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); | 1886 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); |
| 1866 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); | 1887 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); |
| 1888 EXPECT_EQ(base::MD5String(kContentData), resource_entry->file_md5()); |
| 1867 } | 1889 } |
| 1868 | 1890 |
| 1869 TEST_F(FakeDriveServiceTest, AddNewFile_ToRootDirectoryOnEmptyFileSystem) { | 1891 TEST_F(FakeDriveServiceTest, AddNewFile_ToRootDirectoryOnEmptyFileSystem) { |
| 1870 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1892 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1871 "chromeos/gdata/empty_feed.json")); | 1893 "chromeos/gdata/empty_feed.json")); |
| 1872 ASSERT_TRUE(fake_service_.LoadAccountMetadataForWapi( | 1894 ASSERT_TRUE(fake_service_.LoadAccountMetadataForWapi( |
| 1873 "chromeos/gdata/account_metadata.json")); | 1895 "chromeos/gdata/account_metadata.json")); |
| 1874 | 1896 |
| 1875 int64 old_largest_change_id = GetLargestChangeByAboutResource(); | 1897 int64 old_largest_change_id = GetLargestChangeByAboutResource(); |
| 1876 | 1898 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 1895 EXPECT_EQ(kContentType, resource_entry->content_mime_type()); | 1917 EXPECT_EQ(kContentType, resource_entry->content_mime_type()); |
| 1896 EXPECT_EQ(static_cast<int64>(kContentData.size()), | 1918 EXPECT_EQ(static_cast<int64>(kContentData.size()), |
| 1897 resource_entry->file_size()); | 1919 resource_entry->file_size()); |
| 1898 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); | 1920 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); |
| 1899 EXPECT_EQ(kTitle, resource_entry->title()); | 1921 EXPECT_EQ(kTitle, resource_entry->title()); |
| 1900 EXPECT_TRUE(HasParent(resource_entry->resource_id(), | 1922 EXPECT_TRUE(HasParent(resource_entry->resource_id(), |
| 1901 fake_service_.GetRootResourceId())); | 1923 fake_service_.GetRootResourceId())); |
| 1902 // Should be incremented as a new directory was created. | 1924 // Should be incremented as a new directory was created. |
| 1903 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); | 1925 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); |
| 1904 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); | 1926 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); |
| 1927 EXPECT_EQ(base::MD5String(kContentData), resource_entry->file_md5()); |
| 1905 } | 1928 } |
| 1906 | 1929 |
| 1907 TEST_F(FakeDriveServiceTest, AddNewFile_ToNonRootDirectory) { | 1930 TEST_F(FakeDriveServiceTest, AddNewFile_ToNonRootDirectory) { |
| 1908 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1931 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1909 "chromeos/gdata/root_feed.json")); | 1932 "chromeos/gdata/root_feed.json")); |
| 1910 ASSERT_TRUE(fake_service_.LoadAccountMetadataForWapi( | 1933 ASSERT_TRUE(fake_service_.LoadAccountMetadataForWapi( |
| 1911 "chromeos/gdata/account_metadata.json")); | 1934 "chromeos/gdata/account_metadata.json")); |
| 1912 | 1935 |
| 1913 int64 old_largest_change_id = GetLargestChangeByAboutResource(); | 1936 int64 old_largest_change_id = GetLargestChangeByAboutResource(); |
| 1914 | 1937 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 1933 EXPECT_TRUE(resource_entry->is_file()); | 1956 EXPECT_TRUE(resource_entry->is_file()); |
| 1934 EXPECT_EQ(kContentType, resource_entry->content_mime_type()); | 1957 EXPECT_EQ(kContentType, resource_entry->content_mime_type()); |
| 1935 EXPECT_EQ(static_cast<int64>(kContentData.size()), | 1958 EXPECT_EQ(static_cast<int64>(kContentData.size()), |
| 1936 resource_entry->file_size()); | 1959 resource_entry->file_size()); |
| 1937 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); | 1960 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); |
| 1938 EXPECT_EQ(kTitle, resource_entry->title()); | 1961 EXPECT_EQ(kTitle, resource_entry->title()); |
| 1939 EXPECT_TRUE(HasParent(resource_entry->resource_id(), kParentResourceId)); | 1962 EXPECT_TRUE(HasParent(resource_entry->resource_id(), kParentResourceId)); |
| 1940 // Should be incremented as a new directory was created. | 1963 // Should be incremented as a new directory was created. |
| 1941 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); | 1964 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); |
| 1942 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); | 1965 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); |
| 1966 EXPECT_EQ(base::MD5String(kContentData), resource_entry->file_md5()); |
| 1943 } | 1967 } |
| 1944 | 1968 |
| 1945 TEST_F(FakeDriveServiceTest, AddNewFile_ToNonexistingDirectory) { | 1969 TEST_F(FakeDriveServiceTest, AddNewFile_ToNonexistingDirectory) { |
| 1946 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 1970 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 1947 "chromeos/gdata/root_feed.json")); | 1971 "chromeos/gdata/root_feed.json")); |
| 1948 | 1972 |
| 1949 const std::string kContentType = "text/plain"; | 1973 const std::string kContentType = "text/plain"; |
| 1950 const std::string kContentData = "This is some test content."; | 1974 const std::string kContentData = "This is some test content."; |
| 1951 const std::string kTitle = "new file"; | 1975 const std::string kTitle = "new file"; |
| 1952 const std::string kParentResourceId = "folder:nonexisting_resource_id"; | 1976 const std::string kParentResourceId = "folder:nonexisting_resource_id"; |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2021 resource_entry->file_size()); | 2045 resource_entry->file_size()); |
| 2022 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); | 2046 EXPECT_EQ("resource_id_1", resource_entry->resource_id()); |
| 2023 EXPECT_EQ(kTitle, resource_entry->title()); | 2047 EXPECT_EQ(kTitle, resource_entry->title()); |
| 2024 EXPECT_TRUE(HasParent(resource_entry->resource_id(), | 2048 EXPECT_TRUE(HasParent(resource_entry->resource_id(), |
| 2025 fake_service_.GetRootResourceId())); | 2049 fake_service_.GetRootResourceId())); |
| 2026 ASSERT_EQ(1U, resource_entry->labels().size()); | 2050 ASSERT_EQ(1U, resource_entry->labels().size()); |
| 2027 EXPECT_EQ("shared-with-me", resource_entry->labels()[0]); | 2051 EXPECT_EQ("shared-with-me", resource_entry->labels()[0]); |
| 2028 // Should be incremented as a new directory was created. | 2052 // Should be incremented as a new directory was created. |
| 2029 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); | 2053 EXPECT_EQ(old_largest_change_id + 1, fake_service_.largest_changestamp()); |
| 2030 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); | 2054 EXPECT_EQ(old_largest_change_id + 1, GetLargestChangeByAboutResource()); |
| 2055 EXPECT_EQ(base::MD5String(kContentData), resource_entry->file_md5()); |
| 2031 } | 2056 } |
| 2032 | 2057 |
| 2033 TEST_F(FakeDriveServiceTest, SetLastModifiedTime_ExistingFile) { | 2058 TEST_F(FakeDriveServiceTest, SetLastModifiedTime_ExistingFile) { |
| 2034 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( | 2059 ASSERT_TRUE(fake_service_.LoadResourceListForWapi( |
| 2035 "chromeos/gdata/root_feed.json")); | 2060 "chromeos/gdata/root_feed.json")); |
| 2036 | 2061 |
| 2037 const std::string kResourceId = "file:2_file_resource_id"; | 2062 const std::string kResourceId = "file:2_file_resource_id"; |
| 2038 base::Time time; | 2063 base::Time time; |
| 2039 ASSERT_TRUE(base::Time::FromString("1 April 2013 12:34:56", &time)); | 2064 ASSERT_TRUE(base::Time::FromString("1 April 2013 12:34:56", &time)); |
| 2040 | 2065 |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2088 test_util::CreateCopyResultCallback(&error, &resource_entry)); | 2113 test_util::CreateCopyResultCallback(&error, &resource_entry)); |
| 2089 base::RunLoop().RunUntilIdle(); | 2114 base::RunLoop().RunUntilIdle(); |
| 2090 | 2115 |
| 2091 EXPECT_EQ(GDATA_NO_CONNECTION, error); | 2116 EXPECT_EQ(GDATA_NO_CONNECTION, error); |
| 2092 EXPECT_FALSE(resource_entry); | 2117 EXPECT_FALSE(resource_entry); |
| 2093 } | 2118 } |
| 2094 | 2119 |
| 2095 } // namespace | 2120 } // namespace |
| 2096 | 2121 |
| 2097 } // namespace drive | 2122 } // namespace drive |
| OLD | NEW |