/* * Copyright (C) 2007 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.harmony.security.tests.java.security; import dalvik.annotation.TestTargetClass; import dalvik.annotation.TestTargets; import dalvik.annotation.TestLevel; import dalvik.annotation.TestTargetNew; import java.security.AuthProvider; import javax.security.auth.Subject; import javax.security.auth.callback.CallbackHandler; import junit.framework.TestCase; @TestTargetClass(AuthProvider.class) public class AuthProviderTest extends TestCase { protected void setUp() throws Exception { super.setUp(); } protected void tearDown() throws Exception { super.tearDown(); } /** * @tests java.security.AuthProvider#AuthProvider(String, double, String) */ @TestTargets({ @TestTargetNew( level = TestLevel.COMPLETE, notes = "", method = "AuthProvider", args = {java.lang.String.class, double.class, java.lang.String.class} ), @TestTargetNew( level = TestLevel.COMPLETE, notes = "", method = "login", args = {javax.security.auth.Subject.class, javax.security.auth.callback.CallbackHandler.class} ), @TestTargetNew( level = TestLevel.COMPLETE, notes = "", method = "logout", args = {} ), @TestTargetNew( level = TestLevel.COMPLETE, notes = "", method = "setCallbackHandler", args = {javax.security.auth.callback.CallbackHandler.class} ) }) public void testConstructor01() { AuthProviderStub ap = new AuthProviderStub("name", 1.0, "info"); CallbackHandler handler = null; String[] str = {"", null, "!@#$%^&*()"}; double[] version = {0.0, -1.0, Double.MAX_VALUE, Double.MIN_VALUE, Double.NaN, Double.NEGATIVE_INFINITY}; assertEquals("name", ap.getName()); assertEquals(1.0, ap.getVersion()); assertEquals("info", ap.getInfo()); assertNotNull(ap.getServices()); assertTrue(ap.getServices().isEmpty()); for (int i = 0; i < str.length; i++) { for (int j = 0; j < version.length; j++) { try { ap = new AuthProviderStub(str[i], version[j], str[i]); } catch (Exception ex) { fail("Unexpected exception was thrown"); } } } try { ap.setCallbackHandler(handler); ap.login(null, handler); ap.logout(); } catch (Exception e) { fail("Unexpected exception"); } } public class AuthProviderStub extends AuthProvider { public AuthProviderStub(String name, double version, String info) { super( name, version, info); } public void login(Subject subject, CallbackHandler handler) {} public void logout() {} public void setCallbackHandler(CallbackHandler handler){} } }