1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "chrome/common/extensions/manifest_tests/chrome_manifest_test.h" 6#include "extensions/common/extension.h" 7#include "extensions/common/manifest_constants.h" 8#include "extensions/common/manifest_handlers/offline_enabled_info.h" 9#include "testing/gtest/include/gtest/gtest.h" 10 11namespace extensions { 12 13namespace errors = manifest_errors; 14 15class ExtensionManifestOfflineEnabledTest : public ChromeManifestTest { 16}; 17 18TEST_F(ExtensionManifestOfflineEnabledTest, OfflineEnabled) { 19 LoadAndExpectError("offline_enabled_invalid.json", 20 errors::kInvalidOfflineEnabled); 21 scoped_refptr<Extension> extension_0( 22 LoadAndExpectSuccess("offline_enabled_extension.json")); 23 EXPECT_TRUE(OfflineEnabledInfo::IsOfflineEnabled(extension_0.get())); 24 scoped_refptr<Extension> extension_1( 25 LoadAndExpectSuccess("offline_enabled_packaged_app.json")); 26 EXPECT_TRUE(OfflineEnabledInfo::IsOfflineEnabled(extension_1.get())); 27 scoped_refptr<Extension> extension_2( 28 LoadAndExpectSuccess("offline_disabled_packaged_app.json")); 29 EXPECT_FALSE(OfflineEnabledInfo::IsOfflineEnabled(extension_2.get())); 30 scoped_refptr<Extension> extension_3( 31 LoadAndExpectSuccess("offline_default_packaged_app.json")); 32 EXPECT_FALSE(OfflineEnabledInfo::IsOfflineEnabled(extension_3.get())); 33 scoped_refptr<Extension> extension_4( 34 LoadAndExpectSuccess("offline_enabled_hosted_app.json")); 35 EXPECT_TRUE(OfflineEnabledInfo::IsOfflineEnabled(extension_4.get())); 36 scoped_refptr<Extension> extension_5( 37 LoadAndExpectSuccess("offline_default_platform_app.json")); 38 EXPECT_TRUE(OfflineEnabledInfo::IsOfflineEnabled(extension_5.get())); 39 scoped_refptr<Extension> extension_6( 40 LoadAndExpectSuccess("offline_default_platform_app_with_webview.json")); 41 EXPECT_FALSE(OfflineEnabledInfo::IsOfflineEnabled(extension_6.get())); 42} 43 44} // namespace extensions 45