BasicIntObject.java revision 806
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync/*
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * Copyright 2003-2007 Sun Microsystems, Inc. All Rights Reserved.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync *
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * This code is free software; you can redistribute it and/or modify it
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * under the terms of the GNU General Public License version 2 only, as
e64031e20c39650a7bc902a3e1aba613b9415deevboxsync * published by the Free Software Foundation.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync *
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * This code is distributed in the hope that it will be useful, but WITHOUT
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * version 2 for more details (a copy is included in the LICENSE file that
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * accompanied this code).
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync *
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * You should have received a copy of the GNU General Public License version
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * 2 along with this work; if not, write to the Free Software Foundation,
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync *
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * CA 95054 USA or visit www.sun.com if you need additional information or
2a047f0d7ee5964456dbc4dec9925031482588abvboxsync * have any questions.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync */
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync/* Type-specific source code for unit test
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync *
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * Regenerate the BasicX classes via genBasic.sh whenever this file changes.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * We check in the generated source files so that the test tree can be used
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync * independently of the rest of the source tree.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync */
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync// -- This file was mechanically generated: Do not edit! -- //
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncimport java.io.*;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncimport java.math.BigDecimal;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncimport java.math.BigInteger;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncimport java.text.DateFormatSymbols;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncimport java.util.*;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncimport static java.util.Calendar.*;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
97dc19418e21b4b87280756668cf171a4332e498vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsyncpublic class BasicIntObject extends Basic {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync private static void test(String fs, String exp, Object ... args) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Formatter f = new Formatter(new StringBuilder(), Locale.US);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync f.format(fs, args);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync ck(fs, exp, f.toString());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
a7327719907518e1a890c41ab95b5a58252afe3cvboxsync
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync private static void test(Locale l, String fs, String exp, Object ... args)
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync {
a7327719907518e1a890c41ab95b5a58252afe3cvboxsync Formatter f = new Formatter(new StringBuilder(), l);
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync f.format(fs, args);
a7327719907518e1a890c41ab95b5a58252afe3cvboxsync ck(fs, exp, f.toString());
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync }
a7327719907518e1a890c41ab95b5a58252afe3cvboxsync
a7327719907518e1a890c41ab95b5a58252afe3cvboxsync private static void test(String fs, Object ... args) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Formatter f = new Formatter(new StringBuilder(), Locale.US);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync f.format(fs, args);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync ck(fs, "fail", f.toString());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync private static void test(String fs) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Formatter f = new Formatter(new StringBuilder(), Locale.US);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync f.format(fs, "fail");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync ck(fs, "fail", f.toString());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync private static void testSysOut(String fs, String exp, Object ... args) {
43bb4d90097ef9a9d7fc597315d0869427609694vboxsync FileOutputStream fos = null;
43bb4d90097ef9a9d7fc597315d0869427609694vboxsync FileInputStream fis = null;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync try {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync PrintStream saveOut = System.out;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fos = new FileOutputStream("testSysOut");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync System.setOut(new PrintStream(fos));
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync System.out.format(Locale.US, fs, args);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fos.close();
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fis = new FileInputStream("testSysOut");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync byte [] ba = new byte[exp.length()];
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync int len = fis.read(ba);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync String got = new String(ba);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (len != ba.length)
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fail(fs, exp, got);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync ck(fs, exp, got);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync System.setOut(saveOut);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync } catch (FileNotFoundException ex) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fail(fs, ex.getClass());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync } catch (IOException ex) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fail(fs, ex.getClass());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync } finally {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync try {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (fos != null)
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fos.close();
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (fis != null)
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fis.close();
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync } catch (IOException ex) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fail(fs, ex.getClass());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync private static void tryCatch(String fs, Class<?> ex) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync boolean caught = false;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync try {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test(fs);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync } catch (Throwable x) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (ex.isAssignableFrom(x.getClass()))
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync caught = true;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (!caught)
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fail(fs, ex);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync else
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync pass();
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync private static void tryCatch(String fs, Class<?> ex, Object ... args) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync boolean caught = false;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync try {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test(fs, args);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync } catch (Throwable x) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (ex.isAssignableFrom(x.getClass()))
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync caught = true;
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync if (!caught)
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync fail(fs, ex);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync else
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync pass();
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
09e1f0ca3ffdeae53f9e8bce86f9ed3a042e31e1vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
10cebb5ddf375a361848bc6b8ac781c257690da3vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
463386f314aa3ce4676249803f0c0736f4561301vboxsync
463386f314aa3ce4676249803f0c0736f4561301vboxsync
463386f314aa3ce4676249803f0c0736f4561301vboxsync
463386f314aa3ce4676249803f0c0736f4561301vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync private static Integer negate(Integer v) {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync return new Integer(-v.intValue());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync }
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
ad27e1d5e48ca41245120c331cc88b50464813cevboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync public static void test() {
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync TimeZone.setDefault(TimeZone.getTimeZone("GMT-0800"));
ad27e1d5e48ca41245120c331cc88b50464813cevboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // Any characters not explicitly defined as conversions, date/time
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // conversion suffixes, or flags are illegal and are reserved for
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // future extensions. Use of such a character in a format string will
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // cause an UnknownFormatConversionException or
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // UnknownFormatFlagsException to be thrown.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%q", UnknownFormatConversionException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%t&", UnknownFormatConversionException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%&d", UnknownFormatConversionException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%^b", UnknownFormatConversionException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // Formatter.java class javadoc examples
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test(Locale.FRANCE, "e = %+10.4f", "e = +2,7183", Math.E);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%4$2s %3$2s %2$2s %1$2s", " d c b a", "a", "b", "c", "d");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("Amount gained or lost since last statement: $ %,(.2f",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync "Amount gained or lost since last statement: $ (6,217.58)",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync (new BigDecimal("-6217.58")));
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Calendar c = new GregorianCalendar(1969, JULY, 20, 16, 17, 0);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync testSysOut("Local time: %tT", "Local time: 16:17:00", c);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("Unable to open file '%1$s': %2$s",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync "Unable to open file 'food': No such file or directory",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync "food", "No such file or directory");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Calendar duke = new GregorianCalendar(1995, MAY, 23, 19, 48, 34);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync duke.set(Calendar.MILLISECOND, 584);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("Duke's Birthday: %1$tB %1$te, %1$tY",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync "Duke's Birthday: May 23, 1995",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync duke);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("Duke's Birthday: %1$tB %1$te, %1$tY",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync "Duke's Birthday: May 23, 1995",
463386f314aa3ce4676249803f0c0736f4561301vboxsync duke.getTime());
463386f314aa3ce4676249803f0c0736f4561301vboxsync test("Duke's Birthday: %1$tB %1$te, %1$tY",
463386f314aa3ce4676249803f0c0736f4561301vboxsync "Duke's Birthday: May 23, 1995",
463386f314aa3ce4676249803f0c0736f4561301vboxsync duke.getTimeInMillis());
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%4$s %3$s %2$s %1$s %4$s %3$s %2$s %1$s",
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync "d c b a d c b a", "a", "b", "c", "d");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%s %s %<s %<s", "a b b b", "a", "b", "c", "d");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%s %s %s %s", "a b c d", "a", "b", "c", "d");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%2$s %s %<s %s", "b a a b", "a", "b", "c", "d");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // %b
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // General conversion applicable to any argument.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "true", true);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "false", false);
511d105af2bc356d37407e92b45e5363198e8b0fvboxsync test("%B", "TRUE", true);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%B", "FALSE", false);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "true", Boolean.TRUE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "false", Boolean.FALSE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%B", "TRUE", Boolean.TRUE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%B", "FALSE", Boolean.FALSE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%14b", " true", true);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%-14b", "true ", true);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%5.1b", " f", false);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%-5.1b", "f ", false);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "true", "foo");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "false", (Object)null);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // Boolean.java hardcodes the Strings for "true" and "false", so no
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // localization is possible.
e8360046bf56d03d114dcd9c8e273d00e1985f43vboxsync test(Locale.FRANCE, "%b", "true", true);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test(Locale.FRANCE, "%b", "false", false);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
97dc19418e21b4b87280756668cf171a4332e498vboxsync // If you pass in a single array to a varargs method, the compiler
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // uses it as the array of arguments rather than treating it as a
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // single array-type argument.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "false", (Object[])new String[2]);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "true", new String[2], new String[2]);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync int [] ia = { 1, 2, 3 };
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%b", "true", ia);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // %b - errors
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%#b", FormatFlagsConversionMismatchException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%-b", MissingFormatWidthException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // correct or side-effect of implementation?
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%.b", UnknownFormatConversionException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%,b", FormatFlagsConversionMismatchException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // %c
463386f314aa3ce4676249803f0c0736f4561301vboxsync //
463386f314aa3ce4676249803f0c0736f4561301vboxsync // General conversion applicable to any argument.
463386f314aa3ce4676249803f0c0736f4561301vboxsync //---------------------------------------------------------------------
463386f314aa3ce4676249803f0c0736f4561301vboxsync test("%c", "i", 'i');
463386f314aa3ce4676249803f0c0736f4561301vboxsync test("%C", "I", 'i');
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%4c", " i", 'i');
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%-4c", "i ", 'i');
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%4C", " I", 'i');
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%-4C", "I ", 'i');
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%c", "i", new Character('i'));
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%c", "H", (byte) 72);
fd5b0082a64ec49263419f41ddabf584b78d887evboxsync test("%c", "i", (short) 105);
fd5b0082a64ec49263419f41ddabf584b78d887evboxsync test("%c", "!", (int) 33);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%c", "\u007F", Byte.MAX_VALUE);
faff6adca592b2de8725db32b9476cbcb120ba57vboxsync test("%c", new String(Character.toChars(Short.MAX_VALUE)),
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync Short.MAX_VALUE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%c", "null", (Object) null);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // %c - errors
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%c", IllegalFormatConversionException.class,
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync Boolean.TRUE);
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync tryCatch("%c", IllegalFormatConversionException.class,
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync (float) 0.1);
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync tryCatch("%c", IllegalFormatConversionException.class,
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync new Object());
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync tryCatch("%c", IllegalFormatCodePointException.class,
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync Byte.MIN_VALUE);
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync tryCatch("%c", IllegalFormatCodePointException.class,
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync Short.MIN_VALUE);
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync tryCatch("%c", IllegalFormatCodePointException.class,
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Integer.MIN_VALUE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%c", IllegalFormatCodePointException.class,
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync Integer.MAX_VALUE);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync tryCatch("%#c", FormatFlagsConversionMismatchException.class);
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync tryCatch("%,c", FormatFlagsConversionMismatchException.class);
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync tryCatch("%(c", FormatFlagsConversionMismatchException.class);
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync tryCatch("%$c", UnknownFormatConversionException.class);
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync tryCatch("%.2c", IllegalFormatPrecisionException.class);
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync //---------------------------------------------------------------------
ee1c2a1c43d1ac3a8b30a99c4f47a14adc835837vboxsync // %s
691aac57c6f10a29a7507143a789f3dca28ed1f3vboxsync //
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // General conversion applicable to any argument.
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%s", "Hello, Duke", "Hello, Duke");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%S", "HELLO, DUKE", "Hello, Duke");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%20S", " HELLO, DUKE", "Hello, Duke");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%20s", " Hello, Duke", "Hello, Duke");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%-20s", "Hello, Duke ", "Hello, Duke");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%-20.5s", "Hello ", "Hello, Duke");
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%s", "null", (Object)null);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync StringBuffer sb = new StringBuffer("foo bar");
29890600941d8c492d0c52cc0daefda9bad1b538vboxsync test("%s", sb.toString(), sb);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync test("%S", sb.toString().toUpperCase(), sb);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync // %s - errors
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
97dc19418e21b4b87280756668cf171a4332e498vboxsync tryCatch("%-s", MissingFormatWidthException.class);
43bb4d90097ef9a9d7fc597315d0869427609694vboxsync tryCatch("%--s", DuplicateFormatFlagsException.class);
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync
65acc9a737d682ad726d06327bf6f6ecc6eb7e83vboxsync //---------------------------------------------------------------------
// %h
//
// General conversion applicable to any argument.
//---------------------------------------------------------------------
test("%h", Integer.toHexString("Hello, Duke".hashCode()),
"Hello, Duke");
test("%10h", " ddf63471", "Hello, Duke");
test("%-10h", "ddf63471 ", "Hello, Duke");
test("%-10H", "DDF63471 ", "Hello, Duke");
test("%10h", " 402e0000", 15.0);
test("%10H", " 402E0000", 15.0);
//---------------------------------------------------------------------
// %h - errors
//---------------------------------------------------------------------
tryCatch("%#h", FormatFlagsConversionMismatchException.class);
//---------------------------------------------------------------------
// flag/conversion errors
//---------------------------------------------------------------------
tryCatch("%F", UnknownFormatConversionException.class);
tryCatch("%#g", FormatFlagsConversionMismatchException.class);
Integer minByte = new Integer(Byte.MIN_VALUE);
//---------------------------------------------------------------------
// %d
//
// Numeric conversion applicable to byte, short, int, long, and
// BigInteger.
//---------------------------------------------------------------------
test("%d", "null", (Object)null);
//---------------------------------------------------------------------
// %d - errors
//---------------------------------------------------------------------
tryCatch("%#d", FormatFlagsConversionMismatchException.class);
tryCatch("%D", UnknownFormatConversionException.class);
tryCatch("%0d", MissingFormatWidthException.class);
tryCatch("%-d", MissingFormatWidthException.class);
tryCatch("%7.3d", IllegalFormatPrecisionException.class);
//---------------------------------------------------------------------
// %o
//
// Numeric conversion applicable to byte, short, int, long, and
// BigInteger.
//---------------------------------------------------------------------
test("%o", "null", (Object)null);
//---------------------------------------------------------------------
// %o - errors
//---------------------------------------------------------------------
tryCatch("%(o", FormatFlagsConversionMismatchException.class,
minByte);
tryCatch("%+o", FormatFlagsConversionMismatchException.class,
minByte);
tryCatch("% o", FormatFlagsConversionMismatchException.class,
minByte);
tryCatch("%0o", MissingFormatWidthException.class);
tryCatch("%-o", MissingFormatWidthException.class);
tryCatch("%,o", FormatFlagsConversionMismatchException.class);
tryCatch("%O", UnknownFormatConversionException.class);
//---------------------------------------------------------------------
// %x
//
// Numeric conversion applicable to byte, short, int, long, and
// BigInteger.
//---------------------------------------------------------------------
test("%x", "null", (Object)null);
//---------------------------------------------------------------------
// %x - errors
//---------------------------------------------------------------------
tryCatch("%,x", FormatFlagsConversionMismatchException.class);
tryCatch("%0x", MissingFormatWidthException.class);
tryCatch("%-x", MissingFormatWidthException.class);
//---------------------------------------------------------------------
// %t
//
// Date/Time conversions applicable to Calendar, Date, and long.
//---------------------------------------------------------------------
test("%tA", "null", (Object)null);
test("%TA", "NULL", (Object)null);
//---------------------------------------------------------------------
// %t - errors
//---------------------------------------------------------------------
tryCatch("%t", UnknownFormatConversionException.class);
tryCatch("%T", UnknownFormatConversionException.class);
tryCatch("%tP", UnknownFormatConversionException.class);
tryCatch("%TP", UnknownFormatConversionException.class);
tryCatch("%.5tB", IllegalFormatPrecisionException.class);
tryCatch("%#tB", FormatFlagsConversionMismatchException.class);
tryCatch("%-tB", MissingFormatWidthException.class);
//---------------------------------------------------------------------
// %n
//---------------------------------------------------------------------
test("%n", System.getProperty("line.separator"), (Object)null);
test("%n", System.getProperty("line.separator"), "");
tryCatch("%,n", IllegalFormatFlagsException.class);
tryCatch("%.n", UnknownFormatConversionException.class);
tryCatch("%5.n", UnknownFormatConversionException.class);
tryCatch("%5n", IllegalFormatWidthException.class);
tryCatch("%.7n", IllegalFormatPrecisionException.class);
tryCatch("%<n", IllegalFormatFlagsException.class);
//---------------------------------------------------------------------
// %%
//---------------------------------------------------------------------
test("%%", "%", (Object)null);
test("%%", "%", "");
tryCatch("%%%", UnknownFormatConversionException.class);
// perhaps an IllegalFormatArgumentIndexException should be defined?
tryCatch("%<%", IllegalFormatFlagsException.class);
}
}