1558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// Copyright 2013 The Chromium Authors. All rights reserved. 2558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch// found in the LICENSE file. 4558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 5558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "chrome/utility/importer/bookmarks_file_importer.h" 6558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 7558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "testing/gtest/include/gtest/gtest.h" 8558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "url/gurl.h" 9558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 10558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdochnamespace internal { 11558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 12558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdochbool CanImportURL(const GURL& url); 13558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 14558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch} // namespace internal 15558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 16558790d6acca3451cf3a6b497803a5f07d0bec58Ben MurdochTEST(BookmarksFileImporterTest, CanImportURL) { 17558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch struct TestCase { 18558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch const std::string url; 19558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch const bool can_be_imported; 20558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch } test_cases[] = { 21558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "http://www.example.com", true }, 22558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "https://www.example.com", true }, 23558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "ftp://www.example.com", true }, 24558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "aim:GoIm?screenname=myscreenname&message=hello", true }, 25558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "chrome://version", true }, 26558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "chrome://chrome-urls", true }, 27558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "chrome://kill", true }, 28d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) { "chrome://chrome", true }, 29d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) { "chrome://about", true }, 30558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "about:version", true }, 31558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "about:blank", true }, 32558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "about:credits", true }, 33558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "wyciwyg://example.com", false }, 34558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "place://google.com", false }, 35558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "about:config", false }, 36558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch { "about:moon", false }, 37558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch }; 38558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch 39558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_cases); ++i) { 40558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch EXPECT_EQ(test_cases[i].can_be_imported, 41558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch internal::CanImportURL(GURL(test_cases[i].url))); 42558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch } 43558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch} 44