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
5package org.chromium.android_webview.test;
6
7import android.test.suitebuilder.annotation.SmallTest;
8
9import org.chromium.android_webview.AwContentsStatics;
10import org.chromium.base.test.util.Feature;
11import org.chromium.content.browser.test.util.CallbackHelper;
12
13/**
14 * AwContentsStatics tests.
15 */
16public class AwContentsStaticsTest extends AwTestBase {
17
18    private static class ClearClientCertCallbackHelper extends CallbackHelper
19            implements Runnable {
20        @Override
21        public void run() {
22            notifyCalled();
23        }
24    }
25
26    @Feature({"AndroidWebView"})
27    @SmallTest
28    public void testClearClientCertPreferences() throws Throwable {
29        final ClearClientCertCallbackHelper callbackHelper = new ClearClientCertCallbackHelper();
30        int currentCallCount = callbackHelper.getCallCount();
31        runTestOnUiThread(new Runnable() {
32            @Override
33            public void run() {
34                // Make sure calling clearClientCertPreferences with null callback does not
35                // cause a crash.
36                AwContentsStatics.clearClientCertPreferences(null);
37                AwContentsStatics.clearClientCertPreferences(callbackHelper);
38            }
39        });
40        callbackHelper.waitForCallback(currentCallCount);
41    }
42}
43