1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/*
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  Licensed to the Apache Software Foundation (ASF) under one or more
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  contributor license agreements.  See the NOTICE file distributed with
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  this work for additional information regarding copyright ownership.
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  The ASF licenses this file to You under the Apache License, Version 2.0
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  (the "License"); you may not use this file except in compliance with
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  the License.  You may obtain a copy of the License at
8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *     http://www.apache.org/licenses/LICENSE-2.0
10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  Unless required by applicable law or agreed to in writing, software
12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  distributed under the License is distributed on an "AS IS" BASIS,
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  See the License for the specific language governing permissions and
15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  limitations under the License.
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
1862542d811e9bc4126ef912bc6e60e1b9952b4e09Narayan Kamathpackage org.apache.harmony.tests.javax.security.auth;
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport junit.framework.TestCase;
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport javax.security.auth.login.LoginException;
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Tests for <code>LoginException</code> class constructors and methods.
26f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic class LoginExceptionTest extends TestCase {
29f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    private static String[] msgs = {
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            "",
32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            "Check new message",
33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            "Check new message Check new message Check new message Check new message Check new message" };
34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
37229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom     * javax.security.auth.login.LoginException#LoginException()
38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Assertion: constructs LoginException with no detail message
39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testLoginException01() {
41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        LoginException lE = new LoginException();
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNull("getMessage() must return null.", lE.getMessage());
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNull("getCause() must return null", lE.getCause());
44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
45f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes
46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
47229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom     * javax.security.auth.login.LoginException#LoginException(String msg)
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Assertion: constructs with not null parameter.
49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testLoginException02() {
51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        LoginException lE;
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        for (int i = 0; i < msgs.length; i++) {
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            lE = new LoginException(msgs[i]);
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            assertEquals("getMessage() must return: ".concat(msgs[i]), lE.getMessage(), msgs[i]);
55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project            assertNull("getCause() must return null", lE.getCause());
56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        }
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    /**
60229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom     * javax.security.auth.login.LoginException#LoginException(String msg)
61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     * Assertion: constructs with null parameter.
62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project     */
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public void testLoginException03() {
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        String msg = null;
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        LoginException lE = new LoginException(msg);
66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNull("getMessage() must return null.", lE.getMessage());
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        assertNull("getCause() must return null", lE.getCause());
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
70