Upstream version 10.38.220.0
[platform/framework/web/crosswalk.git] / src / android_webview / javatests / src / org / chromium / android_webview / test / CommandLineTest.java
1 // Copyright 2014 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 package org.chromium.android_webview.test;
6
7 import android.test.suitebuilder.annotation.SmallTest;
8
9 import org.chromium.android_webview.AwBrowserProcess;
10 import org.chromium.base.CommandLine;
11 import org.chromium.base.library_loader.LibraryLoader;
12 import org.chromium.base.test.util.Feature;
13
14 /**
15  * Test suite for setting by the command line.
16  */
17 public class CommandLineTest extends AwTestBase {
18     @Override
19     protected boolean needsBrowserProcessStarted() {
20         return false;
21     }
22
23     @SmallTest
24     @Feature({"AndroidWebView"})
25     public void testSetupCommandLine() throws Exception {
26         // The commandline starts off in Java:
27         CommandLine cl = CommandLine.getInstance();
28         assertFalse(cl.isNativeImplementation());
29
30         // We can add a switch.
31         assertFalse(cl.hasSwitch("magic-switch"));
32         cl.appendSwitchWithValue("magic-switch", "magic");
33         assertTrue(cl.hasSwitch("magic-switch"));
34         assertEquals("magic", cl.getSwitchValue("magic-switch"));
35
36         // Setup Chrome.
37         AwBrowserProcess.loadLibrary();
38         LibraryLoader.switchCommandLineForWebView();
39
40         // Now we should have switched to a native backed command line:
41         cl = CommandLine.getInstance();
42         assertTrue(cl.isNativeImplementation());
43
44         // Our first switch is still there.
45         assertTrue(cl.hasSwitch("magic-switch"));
46         assertEquals("magic", cl.getSwitchValue("magic-switch"));
47
48         // And we can add another one.
49         assertFalse(cl.hasSwitch("more-magic-switch"));
50         cl.appendSwitchWithValue("more-magic-switch", "more-magic");
51         assertTrue(cl.hasSwitch("more-magic-switch"));
52         assertEquals("more-magic", cl.getSwitchValue("more-magic-switch"));
53     }
54 }