OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 <string> | 5 #include <string> |
6 #include <vector> | 6 #include <vector> |
7 | 7 |
8 #include "base/bind.h" | 8 #include "base/bind.h" |
9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
10 #include "base/files/file_util.h" | 10 #include "base/files/file_util.h" |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 public: | 51 public: |
52 TestITunesDataProvider(const base::FilePath& xml_library_path, | 52 TestITunesDataProvider(const base::FilePath& xml_library_path, |
53 const base::Closure& callback) | 53 const base::Closure& callback) |
54 : ITunesDataProvider(xml_library_path), | 54 : ITunesDataProvider(xml_library_path), |
55 callback_(callback) { | 55 callback_(callback) { |
56 } | 56 } |
57 virtual ~TestITunesDataProvider() {} | 57 virtual ~TestITunesDataProvider() {} |
58 | 58 |
59 private: | 59 private: |
60 virtual void OnLibraryChanged(const base::FilePath& path, | 60 virtual void OnLibraryChanged(const base::FilePath& path, |
61 bool error) OVERRIDE { | 61 bool error) override { |
62 ITunesDataProvider::OnLibraryChanged(path, error); | 62 ITunesDataProvider::OnLibraryChanged(path, error); |
63 callback_.Run(); | 63 callback_.Run(); |
64 } | 64 } |
65 | 65 |
66 base::Closure callback_; | 66 base::Closure callback_; |
67 | 67 |
68 DISALLOW_COPY_AND_ASSIGN(TestITunesDataProvider); | 68 DISALLOW_COPY_AND_ASSIGN(TestITunesDataProvider); |
69 }; | 69 }; |
70 | 70 |
71 class ITunesDataProviderTest : public InProcessBrowserTest { | 71 class ITunesDataProviderTest : public InProcessBrowserTest { |
72 public: | 72 public: |
73 ITunesDataProviderTest() {} | 73 ITunesDataProviderTest() {} |
74 virtual ~ITunesDataProviderTest() {} | 74 virtual ~ITunesDataProviderTest() {} |
75 | 75 |
76 protected: | 76 protected: |
77 virtual void SetUp() OVERRIDE { | 77 virtual void SetUp() override { |
78 ASSERT_TRUE(library_dir_.CreateUniqueTempDir()); | 78 ASSERT_TRUE(library_dir_.CreateUniqueTempDir()); |
79 WriteLibraryInternal(SetUpLibrary()); | 79 WriteLibraryInternal(SetUpLibrary()); |
80 // The ImportedMediaGalleryRegistry is created on which ever thread calls | 80 // The ImportedMediaGalleryRegistry is created on which ever thread calls |
81 // GetInstance() first. It shouldn't matter what thread creates, however | 81 // GetInstance() first. It shouldn't matter what thread creates, however |
82 // in practice it is always created on the UI thread, so this calls | 82 // in practice it is always created on the UI thread, so this calls |
83 // GetInstance here to mirror those real conditions. | 83 // GetInstance here to mirror those real conditions. |
84 ImportedMediaGalleryRegistry::GetInstance(); | 84 ImportedMediaGalleryRegistry::GetInstance(); |
85 InProcessBrowserTest::SetUp(); | 85 InProcessBrowserTest::SetUp(); |
86 } | 86 } |
87 | 87 |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 base::Closure quit_closure_; | 210 base::Closure quit_closure_; |
211 | 211 |
212 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderTest); | 212 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderTest); |
213 }; | 213 }; |
214 | 214 |
215 class ITunesDataProviderBasicTest : public ITunesDataProviderTest { | 215 class ITunesDataProviderBasicTest : public ITunesDataProviderTest { |
216 public: | 216 public: |
217 ITunesDataProviderBasicTest() {} | 217 ITunesDataProviderBasicTest() {} |
218 virtual ~ITunesDataProviderBasicTest() {} | 218 virtual ~ITunesDataProviderBasicTest() {} |
219 | 219 |
220 virtual std::vector<LibraryEntry> SetUpLibrary() OVERRIDE { | 220 virtual std::vector<LibraryEntry> SetUpLibrary() override { |
221 base::FilePath track = library_dir().AppendASCII("Track.mp3"); | 221 base::FilePath track = library_dir().AppendASCII("Track.mp3"); |
222 std::vector<LibraryEntry> entries; | 222 std::vector<LibraryEntry> entries; |
223 entries.push_back(LibraryEntry("Artist", "Album", track)); | 223 entries.push_back(LibraryEntry("Artist", "Album", track)); |
224 return entries; | 224 return entries; |
225 } | 225 } |
226 | 226 |
227 virtual void StartTest(bool parse_success) OVERRIDE { | 227 virtual void StartTest(bool parse_success) override { |
228 EXPECT_TRUE(parse_success); | 228 EXPECT_TRUE(parse_success); |
229 | 229 |
230 // KnownArtist | 230 // KnownArtist |
231 EXPECT_TRUE(data_provider()->KnownArtist("Artist")); | 231 EXPECT_TRUE(data_provider()->KnownArtist("Artist")); |
232 EXPECT_FALSE(data_provider()->KnownArtist("Artist2")); | 232 EXPECT_FALSE(data_provider()->KnownArtist("Artist2")); |
233 | 233 |
234 // KnownAlbum | 234 // KnownAlbum |
235 EXPECT_TRUE(data_provider()->KnownAlbum("Artist", "Album")); | 235 EXPECT_TRUE(data_provider()->KnownAlbum("Artist", "Album")); |
236 EXPECT_FALSE(data_provider()->KnownAlbum("Artist", "Album2")); | 236 EXPECT_FALSE(data_provider()->KnownAlbum("Artist", "Album2")); |
237 EXPECT_FALSE(data_provider()->KnownAlbum("Artist2", "Album")); | 237 EXPECT_FALSE(data_provider()->KnownAlbum("Artist2", "Album")); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 | 278 |
279 private: | 279 private: |
280 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderBasicTest); | 280 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderBasicTest); |
281 }; | 281 }; |
282 | 282 |
283 class ITunesDataProviderRefreshTest : public ITunesDataProviderTest { | 283 class ITunesDataProviderRefreshTest : public ITunesDataProviderTest { |
284 public: | 284 public: |
285 ITunesDataProviderRefreshTest() {} | 285 ITunesDataProviderRefreshTest() {} |
286 virtual ~ITunesDataProviderRefreshTest() {} | 286 virtual ~ITunesDataProviderRefreshTest() {} |
287 | 287 |
288 virtual std::vector<LibraryEntry> SetUpLibrary() OVERRIDE { | 288 virtual std::vector<LibraryEntry> SetUpLibrary() override { |
289 base::FilePath track = library_dir().AppendASCII("Track.mp3"); | 289 base::FilePath track = library_dir().AppendASCII("Track.mp3"); |
290 std::vector<LibraryEntry> entries; | 290 std::vector<LibraryEntry> entries; |
291 entries.push_back(LibraryEntry("Artist", "Album", track)); | 291 entries.push_back(LibraryEntry("Artist", "Album", track)); |
292 return entries; | 292 return entries; |
293 } | 293 } |
294 | 294 |
295 virtual void StartTest(bool parse_success) OVERRIDE { | 295 virtual void StartTest(bool parse_success) override { |
296 EXPECT_TRUE(parse_success); | 296 EXPECT_TRUE(parse_success); |
297 | 297 |
298 // Initial contents. | 298 // Initial contents. |
299 ExpectTrackLocation("Artist", "Album", "Track.mp3"); | 299 ExpectTrackLocation("Artist", "Album", "Track.mp3"); |
300 ExpectNoTrack("Artist2", "Album2", "Track2.mp3"); | 300 ExpectNoTrack("Artist2", "Album2", "Track2.mp3"); |
301 | 301 |
302 // New file. | 302 // New file. |
303 base::FilePath track2 = library_dir().AppendASCII("Track2.mp3"); | 303 base::FilePath track2 = library_dir().AppendASCII("Track2.mp3"); |
304 std::vector<LibraryEntry> entries; | 304 std::vector<LibraryEntry> entries; |
305 entries.push_back(LibraryEntry("Artist2", "Album2", track2)); | 305 entries.push_back(LibraryEntry("Artist2", "Album2", track2)); |
(...skipping 22 matching lines...) Expand all Loading... |
328 | 328 |
329 private: | 329 private: |
330 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderRefreshTest); | 330 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderRefreshTest); |
331 }; | 331 }; |
332 | 332 |
333 class ITunesDataProviderInvalidTest : public ITunesDataProviderTest { | 333 class ITunesDataProviderInvalidTest : public ITunesDataProviderTest { |
334 public: | 334 public: |
335 ITunesDataProviderInvalidTest() {} | 335 ITunesDataProviderInvalidTest() {} |
336 virtual ~ITunesDataProviderInvalidTest() {} | 336 virtual ~ITunesDataProviderInvalidTest() {} |
337 | 337 |
338 virtual std::vector<LibraryEntry> SetUpLibrary() OVERRIDE { | 338 virtual std::vector<LibraryEntry> SetUpLibrary() override { |
339 base::FilePath track = library_dir().AppendASCII("Track.mp3"); | 339 base::FilePath track = library_dir().AppendASCII("Track.mp3"); |
340 std::vector<LibraryEntry> entries; | 340 std::vector<LibraryEntry> entries; |
341 entries.push_back(LibraryEntry("Artist", "Album", track)); | 341 entries.push_back(LibraryEntry("Artist", "Album", track)); |
342 return entries; | 342 return entries; |
343 } | 343 } |
344 | 344 |
345 virtual void StartTest(bool parse_success) OVERRIDE { | 345 virtual void StartTest(bool parse_success) override { |
346 EXPECT_TRUE(parse_success); | 346 EXPECT_TRUE(parse_success); |
347 | 347 |
348 SetLibraryChangeCallback( | 348 SetLibraryChangeCallback( |
349 base::Bind(&ITunesDataProvider::RefreshData, | 349 base::Bind(&ITunesDataProvider::RefreshData, |
350 base::Unretained(data_provider()), | 350 base::Unretained(data_provider()), |
351 base::Bind(&ITunesDataProviderInvalidTest::CheckInvalid, | 351 base::Bind(&ITunesDataProviderInvalidTest::CheckInvalid, |
352 base::Unretained(this)))); | 352 base::Unretained(this)))); |
353 ASSERT_EQ(1L, base::WriteFile(XmlFile(), " ", 1)); | 353 ASSERT_EQ(1L, base::WriteFile(XmlFile(), " ", 1)); |
354 } | 354 } |
355 | 355 |
356 void CheckInvalid(bool is_valid) { | 356 void CheckInvalid(bool is_valid) { |
357 EXPECT_FALSE(is_valid); | 357 EXPECT_FALSE(is_valid); |
358 TestDone(); | 358 TestDone(); |
359 } | 359 } |
360 | 360 |
361 private: | 361 private: |
362 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderInvalidTest); | 362 DISALLOW_COPY_AND_ASSIGN(ITunesDataProviderInvalidTest); |
363 }; | 363 }; |
364 | 364 |
365 class ITunesDataProviderUniqueNameTest : public ITunesDataProviderTest { | 365 class ITunesDataProviderUniqueNameTest : public ITunesDataProviderTest { |
366 public: | 366 public: |
367 ITunesDataProviderUniqueNameTest() {} | 367 ITunesDataProviderUniqueNameTest() {} |
368 virtual ~ITunesDataProviderUniqueNameTest() {} | 368 virtual ~ITunesDataProviderUniqueNameTest() {} |
369 | 369 |
370 virtual std::vector<LibraryEntry> SetUpLibrary() OVERRIDE { | 370 virtual std::vector<LibraryEntry> SetUpLibrary() override { |
371 base::FilePath track = library_dir().AppendASCII("Track.mp3"); | 371 base::FilePath track = library_dir().AppendASCII("Track.mp3"); |
372 std::vector<LibraryEntry> entries; | 372 std::vector<LibraryEntry> entries; |
373 // Dupe album names should get uniquified with the track id, which in the | 373 // Dupe album names should get uniquified with the track id, which in the |
374 // test framework is the vector index. | 374 // test framework is the vector index. |
375 entries.push_back(LibraryEntry("Artist", "Album", track)); | 375 entries.push_back(LibraryEntry("Artist", "Album", track)); |
376 entries.push_back(LibraryEntry("Artist", "Album", track)); | 376 entries.push_back(LibraryEntry("Artist", "Album", track)); |
377 entries.push_back(LibraryEntry("Artist", "Album2", track)); | 377 entries.push_back(LibraryEntry("Artist", "Album2", track)); |
378 return entries; | 378 return entries; |
379 } | 379 } |
380 | 380 |
381 virtual void StartTest(bool parse_success) OVERRIDE { | 381 virtual void StartTest(bool parse_success) override { |
382 EXPECT_TRUE(parse_success); | 382 EXPECT_TRUE(parse_success); |
383 | 383 |
384 base::FilePath track = | 384 base::FilePath track = |
385 library_dir().AppendASCII("Track.mp3").NormalizePathSeparators(); | 385 library_dir().AppendASCII("Track.mp3").NormalizePathSeparators(); |
386 EXPECT_EQ(track.value(), | 386 EXPECT_EQ(track.value(), |
387 data_provider()->GetTrackLocation( | 387 data_provider()->GetTrackLocation( |
388 "Artist", "Album", | 388 "Artist", "Album", |
389 "Track (1).mp3").NormalizePathSeparators().value()); | 389 "Track (1).mp3").NormalizePathSeparators().value()); |
390 EXPECT_EQ(track.value(), | 390 EXPECT_EQ(track.value(), |
391 data_provider()->GetTrackLocation( | 391 data_provider()->GetTrackLocation( |
(...skipping 12 matching lines...) Expand all Loading... |
404 }; | 404 }; |
405 | 405 |
406 class ITunesDataProviderEscapeTest : public ITunesDataProviderTest { | 406 class ITunesDataProviderEscapeTest : public ITunesDataProviderTest { |
407 // Albums and tracks that aren't the same, but become the same after | 407 // Albums and tracks that aren't the same, but become the same after |
408 // replacing bad characters are not handled properly, but that case should | 408 // replacing bad characters are not handled properly, but that case should |
409 // never happen in practice. | 409 // never happen in practice. |
410 public: | 410 public: |
411 ITunesDataProviderEscapeTest() {} | 411 ITunesDataProviderEscapeTest() {} |
412 virtual ~ITunesDataProviderEscapeTest() {} | 412 virtual ~ITunesDataProviderEscapeTest() {} |
413 | 413 |
414 virtual std::vector<LibraryEntry> SetUpLibrary() OVERRIDE { | 414 virtual std::vector<LibraryEntry> SetUpLibrary() override { |
415 base::FilePath track = library_dir().AppendASCII("Track:1.mp3"); | 415 base::FilePath track = library_dir().AppendASCII("Track:1.mp3"); |
416 std::vector<LibraryEntry> entries; | 416 std::vector<LibraryEntry> entries; |
417 entries.push_back(LibraryEntry("Artist:/name", "Album:name/", track)); | 417 entries.push_back(LibraryEntry("Artist:/name", "Album:name/", track)); |
418 entries.push_back(LibraryEntry("Artist/name", "Album:name", track)); | 418 entries.push_back(LibraryEntry("Artist/name", "Album:name", track)); |
419 entries.push_back(LibraryEntry("Artist/name", "Album:name", track)); | 419 entries.push_back(LibraryEntry("Artist/name", "Album:name", track)); |
420 entries.push_back(LibraryEntry(kDeNormalizedName, kNormalizedName, track)); | 420 entries.push_back(LibraryEntry(kDeNormalizedName, kNormalizedName, track)); |
421 return entries; | 421 return entries; |
422 } | 422 } |
423 | 423 |
424 virtual void StartTest(bool parse_success) OVERRIDE { | 424 virtual void StartTest(bool parse_success) override { |
425 EXPECT_TRUE(parse_success); | 425 EXPECT_TRUE(parse_success); |
426 | 426 |
427 base::FilePath track = | 427 base::FilePath track = |
428 library_dir().AppendASCII("Track:1.mp3").NormalizePathSeparators(); | 428 library_dir().AppendASCII("Track:1.mp3").NormalizePathSeparators(); |
429 EXPECT_EQ(track.value(), | 429 EXPECT_EQ(track.value(), |
430 data_provider()->GetTrackLocation( | 430 data_provider()->GetTrackLocation( |
431 "Artist__name", "Album_name_", | 431 "Artist__name", "Album_name_", |
432 "Track_1.mp3").NormalizePathSeparators().value()); | 432 "Track_1.mp3").NormalizePathSeparators().value()); |
433 EXPECT_EQ(track.value(), | 433 EXPECT_EQ(track.value(), |
434 data_provider()->GetTrackLocation( | 434 data_provider()->GetTrackLocation( |
(...skipping 29 matching lines...) Expand all Loading... |
464 | 464 |
465 IN_PROC_BROWSER_TEST_F(ITunesDataProviderUniqueNameTest, UniqueNameTest) { | 465 IN_PROC_BROWSER_TEST_F(ITunesDataProviderUniqueNameTest, UniqueNameTest) { |
466 RunTest(); | 466 RunTest(); |
467 } | 467 } |
468 | 468 |
469 IN_PROC_BROWSER_TEST_F(ITunesDataProviderEscapeTest, EscapeTest) { | 469 IN_PROC_BROWSER_TEST_F(ITunesDataProviderEscapeTest, EscapeTest) { |
470 RunTest(); | 470 RunTest(); |
471 } | 471 } |
472 | 472 |
473 } // namespace itunes | 473 } // namespace itunes |
OLD | NEW |