blob: b223231f8229b59ca3571a6ac29f8e7f69c39499 [file] [log] [blame]
// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "extensions/common/manifest_constants.h"
#include "extensions/common/manifest_test.h"
#include "extensions/common/manifest_url_handlers.h"
#include "testing/gtest/include/gtest/gtest.h"
using extensions::Extension;
using extensions::mojom::ManifestLocation;
namespace errors = extensions::manifest_errors;
using UpdateURLManifestTest = extensions::ManifestTest;
TEST_F(UpdateURLManifestTest, UpdateUrls) {
// Test several valid update urls
const Testcase testcases[] = {
Testcase("update_url_valid_1.json", ManifestLocation::kInternal,
Extension::NO_FLAGS),
Testcase("update_url_valid_2.json", ManifestLocation::kInternal,
Extension::NO_FLAGS),
Testcase("update_url_valid_3.json", ManifestLocation::kInternal,
Extension::NO_FLAGS),
Testcase("update_url_valid_4.json", ManifestLocation::kInternal,
Extension::NO_FLAGS)};
RunTestcases(testcases, EXPECT_TYPE_SUCCESS);
// Test some invalid update urls
const Testcase testcases2[] = {
Testcase("update_url_invalid_1.json", errors::kInvalidUpdateURL,
ManifestLocation::kInternal, Extension::NO_FLAGS),
Testcase("update_url_invalid_2.json", errors::kInvalidUpdateURL,
ManifestLocation::kInternal, Extension::NO_FLAGS),
Testcase("update_url_invalid_3.json", errors::kInvalidUpdateURL,
ManifestLocation::kInternal, Extension::NO_FLAGS)};
RunTestcases(testcases2, EXPECT_TYPE_ERROR);
}