1/*
2 * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24/**
25 *
26 *
27 *  This isn't the test case: ImmutableResourceTest.sh is.
28 *  Refer to ImmutableResourceTest.sh when running this test.
29 *
30 *  @bug        6287579
31 *  @summary    SubClasses of ListResourceBundle should fix getContents()
32 *
33 *  @author Tim Bell
34 *
35 */
36import java.util.ResourceBundle;
37
38public class ImmutableResourceTest {
39
40    public static void main(String[] args) throws Exception {
41        /* Reach under the covers and get the message strings */
42        com.sun.tools.example.debug.tty.TTYResources ttyr =
43            new com.sun.tools.example.debug.tty.TTYResources ();
44        Object [][] testData = ttyr.getContents();
45
46        /* Shred our copy of the message strings */
47        for (int ii = 0; ii < testData.length; ii++) {
48            testData[ii][0] = "T6287579";
49            testData[ii][1] = "yyy";
50        }
51
52        /*
53         * Try to lookup the shredded key.
54         * If this is successful we have a problem.
55         */
56        String ss = null;
57        try {
58            ss = ttyr.getString("T6287579");
59        } catch (java.util.MissingResourceException mre) {
60            /*
61             * Ignore the expected exception since key "T6287579" is
62             * not in the canonical TTYResources.
63             */
64        }
65        if ("yyy".equals(ss)) {
66            throw new Exception ("SubClasses of ListResourceBundle should fix getContents()");
67        }
68        System.out.println("...Finished.");
69    }
70}
71