| Index: chrome/browser/chromeos/customization_document_unittest.cc
|
| ===================================================================
|
| --- chrome/browser/chromeos/customization_document_unittest.cc (revision 0)
|
| +++ chrome/browser/chromeos/customization_document_unittest.cc (revision 0)
|
| @@ -0,0 +1,103 @@
|
| +// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "chrome/browser/chromeos/customization_document.h"
|
| +
|
| +#include "testing/gtest/include/gtest/gtest.h"
|
| +
|
| +namespace {
|
| +
|
| +const char kGoodStartupManifest[] =
|
| + "{"
|
| + " \"version\": \"1.0\","
|
| + " \"product_sku\" : \"SKU\","
|
| + " \"initial_locale\" : \"en_US\","
|
| + " \"background_color\" : \"#880088\","
|
| + " \"registration_url\" : \"http://www.google.com\","
|
| + " \"setup_content\" : ["
|
| + " {"
|
| + " \"content_locale\" : \"en_US\","
|
| + " \"help_page\" : \"setup_content/en_US/help.html\","
|
| + " \"eula_page\" : \"setup_content/en_US/eula.html\","
|
| + " },"
|
| + " {"
|
| + " \"content_locale\" : \"ru\","
|
| + " \"help_page\" : \"setup_content/ru/help.html\","
|
| + " \"eula_page\" : \"setup_content/ru/eula.html\","
|
| + " },"
|
| + " ]"
|
| + "}";
|
| +
|
| +const char kBadStartupManifest1[] = "{}";
|
| +const char kBadStartupManifest2[] = "{ \"version\" : \"1.0\" }";
|
| +const char kBadStartupManifest3[] = "{"
|
| + " \"version\" : \"0.0\","
|
| + " \"product_sku\" : \"SKU\","
|
| + "}";
|
| +
|
| +const char kBadStartupManifest4[] = "{"
|
| + " \"version\" : \"1.0\","
|
| + " \"product_sku\" : \"SKU\","
|
| + " \"setup_content\" : ["
|
| + " {"
|
| + " \"help_page\" : \"setup_content/en_US/help.html\","
|
| + " \"eula_page\" : \"setup_content/en_US/eula.html\","
|
| + " },"
|
| + " ]"
|
| + "}";
|
| +
|
| +const char kBadStartupManifest5[] = "{"
|
| + " \"version\" : \"1.0\","
|
| + " \"product_sku\" : \"SKU\","
|
| + " \"setup_content\" : ["
|
| + " {"
|
| + " \"content_locale\" : \"en_US\","
|
| + " \"eula_page\" : \"setup_content/en_US/eula.html\","
|
| + " },"
|
| + " ]"
|
| + "}";
|
| +
|
| +
|
| +
|
| +} // anonymous namespace
|
| +
|
| +class StartupCustomizationDocumentTest : public testing::Test {
|
| + public:
|
| + chromeos::StartupCustomizationDocument customization_;
|
| +};
|
| +
|
| +TEST_F(StartupCustomizationDocumentTest, LoadBadStartupManifestFromString) {
|
| + bool result = false;
|
| + result = customization_.LoadManifestFromString(kBadStartupManifest1);
|
| + EXPECT_EQ(result, false);
|
| + result = customization_.LoadManifestFromString(kBadStartupManifest2);
|
| + EXPECT_EQ(result, false);
|
| + result = customization_.LoadManifestFromString(kBadStartupManifest3);
|
| + EXPECT_EQ(result, false);
|
| + result = customization_.LoadManifestFromString(kBadStartupManifest4);
|
| + EXPECT_EQ(result, false);
|
| + result = customization_.LoadManifestFromString(kBadStartupManifest5);
|
| + EXPECT_EQ(result, false);
|
| +}
|
| +
|
| +TEST_F(StartupCustomizationDocumentTest, LoadGoodStartupManifestFromString) {
|
| + bool result = false;
|
| + result = customization_.LoadManifestFromString(kGoodStartupManifest);
|
| + EXPECT_EQ(result, true);
|
| + EXPECT_EQ(customization_.version(), "1.0");
|
| + EXPECT_EQ(customization_.product_sku(), "SKU");
|
| + EXPECT_EQ(customization_.initial_locale(), "en_US");
|
| + EXPECT_EQ(customization_.background_color(),
|
| + SkColorSetRGB(0x88, 0x00, 0x88));
|
| + EXPECT_EQ(customization_.registration_url(), "http://www.google.com");
|
| +
|
| + EXPECT_EQ(customization_.GetSetupContent("en_US")->help_page_path,
|
| + "setup_content/en_US/help.html");
|
| + EXPECT_EQ(customization_.GetSetupContent("en_US")->eula_page_path,
|
| + "setup_content/en_US/eula.html");
|
| + EXPECT_EQ(customization_.GetSetupContent("ru")->help_page_path,
|
| + "setup_content/ru/help.html");
|
| + EXPECT_EQ(customization_.GetSetupContent("ru")->eula_page_path,
|
| + "setup_content/ru/eula.html");
|
| +}
|
|
|
| Property changes on: chrome/browser/chromeos/customization_document_unittest.cc
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|