1 // Copyright 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.
5 package org.chromium.android_webview.test;
7 import android.test.AndroidTestCase;
8 import android.test.suitebuilder.annotation.SmallTest;
10 import org.chromium.android_webview.HttpAuthDatabase;
11 import org.chromium.base.test.util.Feature;
14 * Test suite for HttpAuthDatabase.
16 public class HttpAuthDatabaseTest extends AndroidTestCase {
18 private static final String TEST_DATABASE = "http_auth_for_HttpAuthDatabaseTest.db";
21 protected void setUp() throws Exception {
23 getContext().deleteDatabase(TEST_DATABASE);
27 protected void tearDown() throws Exception {
28 getContext().deleteDatabase(TEST_DATABASE);
33 @Feature({"AndroidWebView"})
34 public void testAccessHttpAuthUsernamePassword() throws Exception {
35 HttpAuthDatabase instance = HttpAuthDatabase.newInstance(getContext(), TEST_DATABASE);
37 String host = "http://localhost:8080";
38 String realm = "testrealm";
39 String userName = "user";
40 String password = "password";
42 String[] result = instance.getHttpAuthUsernamePassword(host, realm);
45 instance.setHttpAuthUsernamePassword(host, realm, userName, password);
46 result = instance.getHttpAuthUsernamePassword(host, realm);
47 assertNotNull(result);
48 assertEquals(userName, result[0]);
49 assertEquals(password, result[1]);
51 String newPassword = "newpassword";
52 instance.setHttpAuthUsernamePassword(host, realm, userName, newPassword);
53 result = instance.getHttpAuthUsernamePassword(host, realm);
54 assertNotNull(result);
55 assertEquals(userName, result[0]);
56 assertEquals(newPassword, result[1]);
58 String newUserName = "newuser";
59 instance.setHttpAuthUsernamePassword(host, realm, newUserName, newPassword);
60 result = instance.getHttpAuthUsernamePassword(host, realm);
61 assertNotNull(result);
62 assertEquals(newUserName, result[0]);
63 assertEquals(newPassword, result[1]);
65 instance.setHttpAuthUsernamePassword(host, realm, null, password);
66 result = instance.getHttpAuthUsernamePassword(host, realm);
67 assertNotNull(result);
68 assertNull(result[0]);
69 assertEquals(password, result[1]);
71 instance.setHttpAuthUsernamePassword(host, realm, userName, null);
72 result = instance.getHttpAuthUsernamePassword(host, realm);
73 assertNotNull(result);
74 assertEquals(userName, result[0]);
75 assertEquals(null, result[1]);
77 instance.setHttpAuthUsernamePassword(host, realm, null, null);
78 result = instance.getHttpAuthUsernamePassword(host, realm);
79 assertNotNull(result);
80 assertNull(result[0]);
81 assertNull(result[1]);
83 instance.setHttpAuthUsernamePassword(host, realm, newUserName, newPassword);
84 result = instance.getHttpAuthUsernamePassword(host, realm);
85 assertNotNull(result);
86 assertEquals(newUserName, result[0]);
87 assertEquals(newPassword, result[1]);