OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <stdlib.h> | 5 #include <stdlib.h> |
6 | 6 |
7 #include "base/base_paths.h" | 7 #include "base/base_paths.h" |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/file_util.h" | 9 #include "base/file_util.h" |
10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 } | 347 } |
348 } | 348 } |
349 | 349 |
350 // Test different types of file inputs to URIFixerUpper::FixupURL. This | 350 // Test different types of file inputs to URIFixerUpper::FixupURL. This |
351 // doesn't go into the nice array of fixups above since the file input | 351 // doesn't go into the nice array of fixups above since the file input |
352 // has to exist. | 352 // has to exist. |
353 TEST(URLFixerTest, FixupFile) { | 353 TEST(URLFixerTest, FixupFile) { |
354 // this "original" filename is the one we tweak to get all the variations | 354 // this "original" filename is the one we tweak to get all the variations |
355 base::FilePath dir; | 355 base::FilePath dir; |
356 base::FilePath original; | 356 base::FilePath original; |
357 ASSERT_TRUE(PathService::Get(base::DIR_MODULE, &dir)); | 357 ASSERT_TRUE(PathService::Get(base::DIR_TEST_DATA, &dir)); |
358 ASSERT_TRUE(MakeTempFile( | 358 ASSERT_TRUE(MakeTempFile( |
359 dir, | 359 dir, |
360 base::FilePath(FILE_PATH_LITERAL("url fixer upper existing file.txt")), | 360 base::FilePath(FILE_PATH_LITERAL("url fixer upper existing file.txt")), |
361 &original)); | 361 &original)); |
362 | 362 |
363 // reference path | 363 // reference path |
364 GURL golden(net::FilePathToFileURL(original)); | 364 GURL golden(net::FilePathToFileURL(original)); |
365 | 365 |
366 // c:\foo\bar.txt -> file:///c:/foo/bar.txt (basic) | 366 // c:\foo\bar.txt -> file:///c:/foo/bar.txt (basic) |
367 GURL fixedup(url_fixer::FixupURL(original.AsUTF8Unsafe(), std::string())); | 367 GURL fixedup(url_fixer::FixupURL(original.AsUTF8Unsafe(), std::string())); |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
431 url_fixer::FixupURL(cases[i].input, "").possibly_invalid_spec()); | 431 url_fixer::FixupURL(cases[i].input, "").possibly_invalid_spec()); |
432 } | 432 } |
433 | 433 |
434 EXPECT_TRUE(base::DeleteFile(original, false)); | 434 EXPECT_TRUE(base::DeleteFile(original, false)); |
435 } | 435 } |
436 | 436 |
437 TEST(URLFixerTest, FixupRelativeFile) { | 437 TEST(URLFixerTest, FixupRelativeFile) { |
438 base::FilePath full_path, dir; | 438 base::FilePath full_path, dir; |
439 base::FilePath file_part( | 439 base::FilePath file_part( |
440 FILE_PATH_LITERAL("url_fixer_upper_existing_file.txt")); | 440 FILE_PATH_LITERAL("url_fixer_upper_existing_file.txt")); |
441 ASSERT_TRUE(PathService::Get(base::DIR_MODULE, &dir)); | 441 ASSERT_TRUE(PathService::Get(base::DIR_TEST_DATA, &dir)); |
442 ASSERT_TRUE(MakeTempFile(dir, file_part, &full_path)); | 442 ASSERT_TRUE(MakeTempFile(dir, file_part, &full_path)); |
443 full_path = base::MakeAbsoluteFilePath(full_path); | 443 full_path = base::MakeAbsoluteFilePath(full_path); |
444 ASSERT_FALSE(full_path.empty()); | 444 ASSERT_FALSE(full_path.empty()); |
445 | 445 |
446 // make sure we pass through good URLs | 446 // make sure we pass through good URLs |
447 for (size_t i = 0; i < arraysize(fixup_cases); ++i) { | 447 for (size_t i = 0; i < arraysize(fixup_cases); ++i) { |
448 FixupCase value = fixup_cases[i]; | 448 FixupCase value = fixup_cases[i]; |
449 base::FilePath input = base::FilePath::FromUTF8Unsafe(value.input); | 449 base::FilePath input = base::FilePath::FromUTF8Unsafe(value.input); |
450 EXPECT_EQ(value.output, | 450 EXPECT_EQ(value.output, |
451 url_fixer::FixupRelativeFile(dir, input).possibly_invalid_spec()); | 451 url_fixer::FixupRelativeFile(dir, input).possibly_invalid_spec()); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
508 EXPECT_TRUE(base::DeleteFile(full_path, false)); | 508 EXPECT_TRUE(base::DeleteFile(full_path, false)); |
509 EXPECT_TRUE(base::DeleteFile(new_dir, true)); | 509 EXPECT_TRUE(base::DeleteFile(new_dir, true)); |
510 | 510 |
511 // Test that an obvious HTTP URL isn't accidentally treated as an absolute | 511 // Test that an obvious HTTP URL isn't accidentally treated as an absolute |
512 // file path (on account of system-specific craziness). | 512 // file path (on account of system-specific craziness). |
513 base::FilePath empty_path; | 513 base::FilePath empty_path; |
514 base::FilePath http_url_path(FILE_PATH_LITERAL("http://../")); | 514 base::FilePath http_url_path(FILE_PATH_LITERAL("http://../")); |
515 EXPECT_TRUE( | 515 EXPECT_TRUE( |
516 url_fixer::FixupRelativeFile(empty_path, http_url_path).SchemeIs("http")); | 516 url_fixer::FixupRelativeFile(empty_path, http_url_path).SchemeIs("http")); |
517 } | 517 } |
OLD | NEW |