/* * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ /* * @test * @library /java/text/testlib * @summary test International Date Format Symbols */ /* (C) Copyright Taligent, Inc. 1996, 1997 - All Rights Reserved (C) Copyright IBM Corp. 1996, 1997 - All Rights Reserved The original version of this source code and documentation is copyrighted and owned by Taligent, Inc., a wholly-owned subsidiary of IBM. These materials are provided under terms of a License Agreement between Taligent and Sun. This technology is protected by multiple US and International patents. This notice and attribution to Taligent may not be removed. Taligent is a registered trademark of Taligent, Inc. */ import java.text.*; import java.util.*; public class IntlTestDateFormatSymbols extends IntlTest { public static void main(String[] args) throws Exception { new IntlTestDateFormatSymbols().run(args); } // Test getMonths public void TestGetMonths() { final String[] month; DateFormatSymbols symbol; symbol=new DateFormatSymbols(Locale.getDefault()); month=symbol.getMonths(); int cnt = month.length; logln("size = " + cnt); for (int i=0; i<cnt; ++i) { logln(month[i]); } } // Test the API of DateFormatSymbols; primarily a simple get/set set. public void TestSymbols() { DateFormatSymbols fr = new DateFormatSymbols(Locale.FRENCH); DateFormatSymbols en = new DateFormatSymbols(Locale.ENGLISH); if(en.equals(fr)) { errln("ERROR: English DateFormatSymbols equal to French"); } // just do some VERY basic tests to make sure that get/set work long count; final String[] eras = en.getEras(); fr.setEras(eras); final String[] eras1 = fr.getEras(); count = eras.length; if( count != eras1.length) { errln("ERROR: setEras() failed (different size array)"); } else { for(int i = 0; i < count; i++) { if(! eras[i].equals(eras1[i])) { errln("ERROR: setEras() failed (different string values)"); } } } final String[] months = en.getMonths(); fr.setMonths(months); final String[] months1 = fr.getMonths(); count = months.length; if( count != months1.length) { errln("ERROR: setMonths() failed (different size array)"); } else { for(int i = 0; i < count; i++) { if(! months[i].equals(months1[i])) { errln("ERROR: setMonths() failed (different string values)"); } } } final String[] shortMonths = en.getShortMonths(); fr.setShortMonths(shortMonths); final String[] shortMonths1 = fr.getShortMonths(); count = shortMonths.length; if( count != shortMonths1.length) { errln("ERROR: setShortMonths() failed (different size array)"); } else { for(int i = 0; i < count; i++) { if(! shortMonths[i].equals(shortMonths1[i])) { errln("ERROR: setShortMonths() failed (different string values)"); } } } final String[] weekdays = en.getWeekdays(); fr.setWeekdays(weekdays); final String[] weekdays1 = fr.getWeekdays(); count = weekdays.length; if( count != weekdays1.length) { errln("ERROR: setWeekdays() failed (different size array)"); } else { for(int i = 0; i < count; i++) { if(! weekdays[i].equals(weekdays1[i])) { errln("ERROR: setWeekdays() failed (different string values)"); } } } final String[] shortWeekdays = en.getShortWeekdays(); fr.setShortWeekdays(shortWeekdays); final String[] shortWeekdays1 = fr.getShortWeekdays(); count = shortWeekdays.length; if( count != shortWeekdays1.length) { errln("ERROR: setShortWeekdays() failed (different size array)"); } else { for(int i = 0; i < count; i++) { if(! shortWeekdays[i].equals(shortWeekdays1[i])) { errln("ERROR: setShortWeekdays() failed (different string values)"); } } } final String[] ampms = en.getAmPmStrings(); fr.setAmPmStrings(ampms); final String[] ampms1 = fr.getAmPmStrings(); count = ampms.length; if( count != ampms1.length) { errln("ERROR: setAmPmStrings() failed (different size array)"); } else { for(int i = 0; i < count; i++) { if(! ampms[i].equals(ampms1[i])) { errln("ERROR: setAmPmStrings() failed (different string values)"); } } } long rowCount = 0, columnCount = 0; final String[][] strings = en.getZoneStrings(); fr.setZoneStrings(strings); final String[][] strings1 = fr.getZoneStrings(); rowCount = strings.length; for(int i = 0; i < rowCount; i++) { columnCount = strings[i].length; for(int j = 0; j < columnCount; j++) { if( strings[i][j] != strings1[i][j] ) { errln("ERROR: setZoneStrings() failed"); } } } // final String pattern = DateFormatSymbols.getPatternChars(); String localPattern, pat1, pat2; localPattern = en.getLocalPatternChars(); fr.setLocalPatternChars(localPattern); if(! en.getLocalPatternChars().equals(fr.getLocalPatternChars())) { errln("ERROR: setLocalPatternChars() failed"); } DateFormatSymbols foo = new DateFormatSymbols(); en = (DateFormatSymbols) fr.clone(); if(! en.equals(fr)) { errln("ERROR: Clone failed"); } } }