1a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath/* Licensed to the Apache Software Foundation (ASF) under one or more
2a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * contributor license agreements.  See the NOTICE file distributed with
3a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * this work for additional information regarding copyright ownership.
4a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * The ASF licenses this file to You under the Apache License, Version 2.0
5a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * (the "License"); you may not use this file except in compliance with
6a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * the License.  You may obtain a copy of the License at
7a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath *
8a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath *     http://www.apache.org/licenses/LICENSE-2.0
9a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath *
10a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * Unless required by applicable law or agreed to in writing, software
11a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * distributed under the License is distributed on an "AS IS" BASIS,
12a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * See the License for the specific language governing permissions and
14a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath * limitations under the License.
15a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath */
16a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
17a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamathpackage org.apache.harmony.tests.java.util.prefs;
18a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
19a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamathimport java.util.prefs.BackingStoreException;
20a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamathimport junit.framework.TestCase;
21a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamathimport org.apache.harmony.testframework.serialization.SerializationTest;
22a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
23a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath/**
24a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath *
25a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath *
26a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath */
27a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamathpublic class BackingStoreExceptionTest extends TestCase {
28a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
29a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    /*
30a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     * Class under test for void BackingStoreException(String)
31a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     */
32a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    public void testBackingStoreExceptionString() {
33a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        BackingStoreException e = new BackingStoreException("msg");
34a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        assertNull(e.getCause());
35a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        assertEquals("msg", e.getMessage());
36a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    }
37a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
38a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    /*
39a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     * Class under test for void BackingStoreException(Throwable)
40a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     */
41a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    public void testBackingStoreExceptionThrowable() {
42a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        Throwable t = new Throwable("msg");
43a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        BackingStoreException e = new BackingStoreException(t);
44a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        assertTrue(e.getMessage().indexOf(t.getClass().getName()) >= 0);
45a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        assertTrue(e.getMessage().indexOf("msg") >= 0);
46a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        assertEquals(t, e.getCause());
47a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    }
48a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
49a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    /**
50a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     * @tests serialization/deserialization.
51a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     */
52a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    public void testSerializationSelf() throws Exception {
53a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        SerializationTest.verifySelf(new BackingStoreException("msg"));
54a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    }
55a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath
56a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    /**
57a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     * @tests serialization/deserialization compatibility with RI.
58a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath     */
59a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    public void testSerializationCompatibility() throws Exception {
60a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath        SerializationTest.verifyGolden(this, new BackingStoreException("msg"));
61a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath    }
62a152f62d4d81ef6500b3e02dbc381e2414f9a11fNarayan Kamath}
63