diff -u -r -N mauve-orig/gnu/testlet/java/io/CharArrayWriter/BasicTests.java mauve/gnu/testlet/java/io/CharArrayWriter/BasicTests.java --- mauve-orig/gnu/testlet/java/io/CharArrayWriter/BasicTests.java 1969-12-31 18:00:00.000000000 -0600 +++ mauve/gnu/testlet/java/io/CharArrayWriter/BasicTests.java 2002-12-13 08:45:39.000000000 -0600 @@ -0,0 +1,93 @@ +/************************************************************************* +/* BasicTests.java -- CharArrayWriter basic tests. +/* +/* Copyright (c) 2002 Free Software Foundation, Inc. +/* Written by David J. King (david_king@softhome.net) +/* +/* This program is free software; you can redistribute it and/or modify +/* it under the terms of the GNU General Public License as published +/* by the Free Software Foundation, either version 2 of the License, or +/* (at your option) any later version. +/* +/* This program 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 for more details. +/* +/* You should have received a copy of the GNU General Public License +/* along with this program; if not, write to the Free Software Foundation +/* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA +/*************************************************************************/ + +// Tags: JDK1.1 + +package gnu.testlet.java.io.CharArrayWriter; + +import gnu.testlet.Testlet; +import gnu.testlet.TestHarness; +import java.io.*; + +public class BasicTests implements Testlet +{ + +public void +test(TestHarness harness) +{ + /* + * Use several methods to write to the buffer + * and verify that the results are correct. + */ + String firstLines = "The first lines\n" + + "of the test which include \uA000 inverted question\n" + + "and \u6666 e-with-hat"; + String thirdLine = "a third line"; + String expected = firstLines + ' ' + "third"; + CharArrayWriter writer = new CharArrayWriter(); + if (writer.size() != 0) + harness.check(writer.size(), 0, "empty size"); + writer.write(firstLines, 0, firstLines.length()); + writer.write(32); + char[] thirdLineArray = new char[thirdLine.length()]; + thirdLine.getChars(0, thirdLine.length(), thirdLineArray, 0); + writer.write(thirdLineArray, 2, 5); + String extractedString = writer.toString(); + harness.check(extractedString, expected, "basic string"); + /* + * Clear the buffer and write some more, then see if + * toCharArray works. + */ + writer.reset(); + writer.write(thirdLine, 0, thirdLine.length()); + char[] resultArray = writer.toCharArray(); + boolean arrayEquals = resultArray.length == thirdLineArray.length; + if (arrayEquals) + for (int i=0; i < resultArray.length; i++) + if (resultArray[i] != thirdLineArray[i]) + arrayEquals = false; + harness.checkPoint("reset string"); + harness.check(arrayEquals); + /* + * Try flush and close and make sure they do nothing. + */ + writer.flush(); + writer.close(); + extractedString = writer.toString(); + harness.check(extractedString, thirdLine, "flush and close"); + /* + * Make another CharArrayWriter and writeTo it. + */ + CharArrayWriter secondWriter = new CharArrayWriter(); + boolean pass = false; + try { + writer.writeTo(secondWriter); + extractedString = secondWriter.toString(); + if (extractedString.equals(thirdLine)) + pass = true; + } catch (IOException ie) { + // Nothing need be done, it is enough for pass to remain false + } + harness.checkPoint("writeTo"); + harness.check(pass); +} + +} // BasicTests diff -u -r -N mauve-orig/gnu/testlet/java/io/CharArrayWriter/ProtectedVars.java mauve/gnu/testlet/java/io/CharArrayWriter/ProtectedVars.java --- mauve-orig/gnu/testlet/java/io/CharArrayWriter/ProtectedVars.java 1969-12-31 18:00:00.000000000 -0600 +++ mauve/gnu/testlet/java/io/CharArrayWriter/ProtectedVars.java 2002-12-13 08:45:39.000000000 -0600 @@ -0,0 +1,64 @@ +/************************************************************************* +/* ProtectedVars.java -- Test CharArrayWriter protected variables +/* +/* Copyright (c) 2002 Free Software Foundation, Inc. +/* Written by David J. King (david_king@softhome.net) +/* +/* This program is free software; you can redistribute it and/or modify +/* it under the terms of the GNU General Public License as published +/* by the Free Software Foundation, either version 2 of the License, or +/* (at your option) any later version. +/* +/* This program 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 for more details. +/* +/* You should have received a copy of the GNU General Public License +/* along with this program; if not, write to the Free Software Foundation +/* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA +/*************************************************************************/ + +// Tags: JDK1.1 + +package gnu.testlet.java.io.CharArrayWriter; + +import gnu.testlet.Testlet; +import gnu.testlet.TestHarness; +import java.io.*; + +public class ProtectedVars extends CharArrayWriter implements Testlet +{ + +// Constructor for the test suite +public +ProtectedVars() +{ + super(); +} + +public void +test(TestHarness harness) +{ + /* + * Put in a string, and see if the count is correct. + */ + String str = "Here is a test string"; + ProtectedVars writer = new ProtectedVars(); + writer.write(str, 0, str.length()); + harness.check(writer.count, str.length(), "count"); + /* + * Then see if the stored buffer is correct. + */ + char[] strArray = new char[str.length()]; + str.getChars(0, str.length(), strArray, 0); + boolean pass = writer.buf.length >= strArray.length; + if (pass) + for (int i=0; i < writer.count; i++) + if (writer.buf[i] != strArray[i]) + pass = false; + harness.checkPoint("buffer"); + harness.check(pass); +} + +} // ProtectedVars