📄 linenumberreadertest.java
字号:
// LineNumberReader tests// submitted by Dalibor Topicimport java.io.*;class LineNumberReader_Test { // Print a failure message public static void failure(Class test, Exception e) { System.out.print(test.toString()); System.out.println(" failed"); if (e != null) { System.out.println(e); // e.printStackTrace(); } } // Print a success message public static void success(Class test) { System.out.print(test.toString()); System.out.println(" succeeded"); }}class LineNumberReader_Test1 extends LineNumberReader_Test { // Construct from null public LineNumberReader_Test1() { super(); try { LineNumberReader lnr = new LineNumberReader(null); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test2 extends LineNumberReader_Test { // Construct with size 0 public LineNumberReader_Test2() { super(); try { StringReader sr = new StringReader(" "); LineNumberReader lnr = new LineNumberReader(sr, 0); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test3 extends LineNumberReader_Test { // Construct with negative size public LineNumberReader_Test3() { super(); try { StringReader sr = new StringReader("X"); LineNumberReader lnr = new LineNumberReader(sr, -5); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class NewLNR extends LineNumberReader_Test { // Create a new line number reader to experiment with protected StringReader sr; protected LineNumberReader lnr; protected int bufferlength; public NewLNR () { this("X"); } public NewLNR (String buffer) { sr = new StringReader(buffer); lnr = new LineNumberReader(sr); bufferlength = buffer.length(); }}class LineNumberReader_Test4 extends NewLNR { // Initial line number public LineNumberReader_Test4() { super(); try { System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test5 extends NewLNR { // read ahead limit = 0 public LineNumberReader_Test5() { super(); try { lnr.mark(0); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test6 extends NewLNR { // read ahead limit < 0 public LineNumberReader_Test6() { super(); try { lnr.mark(-5); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test7 extends NewLNR { // read into non-existent character array public LineNumberReader_Test7() { super(); try { int r = lnr.read(null, 0, 0); System.out.println(r); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test8 extends NewLNR { // read past end of character array public LineNumberReader_Test8() { super(); try { int r = lnr.read(new char[1], 2, 1); System.out.println(r); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test9 extends NewLNR { // read past end of character array public LineNumberReader_Test9() { super(); try { int r = lnr.read(new char[1], 0, 2); System.out.println(r); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test10 extends NewLNR { // read at negative offset public LineNumberReader_Test10() { super(); try { int r = lnr.read(new char[1], -5, 0); System.out.println(r); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test11 extends NewLNR { // read negative amount of characters public LineNumberReader_Test11() { try { int r = lnr.read(new char[1], 0, -5); System.out.println(r); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test12 extends NewLNR { // read correct amount of characters public LineNumberReader_Test12() { try { System.out.println(bufferlength); int r = lnr.read(new char[bufferlength], 0, bufferlength ); System.out.println(r); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test13 extends NewLNR { // set line number to 0 public LineNumberReader_Test13() { try { lnr.setLineNumber(0); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test14 extends NewLNR { // set line number to < 0 public LineNumberReader_Test14() { try { lnr.setLineNumber(-5); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test15 extends NewLNR { // read \n public LineNumberReader_Test15() { super("\n"); try { System.out.println(lnr.read()); System.out.println(lnr.read()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test16 extends NewLNR { // read \r (compression test) public LineNumberReader_Test16() { super("\r"); try { System.out.println(lnr.read()); System.out.println(lnr.read()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test17 extends NewLNR { // read \r\n (compression test) public LineNumberReader_Test17() { super("\r\n"); try { System.out.println(lnr.read()); System.out.println(lnr.read()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test18 extends NewLNR { // read \r\r\n (compression test) public LineNumberReader_Test18() { super("\r\r\n"); try { System.out.println(lnr.read()); System.out.println(lnr.read()); System.out.println(lnr.read()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test19 extends NewLNR { // read \n public LineNumberReader_Test19() { super("\n"); try { char [] ch = new char[1]; System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test20 extends NewLNR { // read \r (compression test) public LineNumberReader_Test20() { super("\r"); try { char [] ch = new char[1]; System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test21 extends NewLNR { // read \r\n (compression test) public LineNumberReader_Test21() { super("\r\n"); try { char [] ch = new char[1]; System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test22 extends NewLNR { // read \r\r\n (compression test) public LineNumberReader_Test22() { super("\r\r\n"); try { char [] ch = new char[1]; System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test23 extends NewLNR { // read \r\r\n (compression test) // read(,,) *doesn't* compress characters public LineNumberReader_Test23() { super("\r\n"); try { char [] ch = new char[2]; int r = lnr.read(ch,0,2); System.out.print(new Integer(r).toString()); for (int i = 0; i < r; i++) { System.out.print(" , " + new Integer(ch[i]).toString()); } System.out.println(""); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test24 extends NewLNR { // read \r\r\n (compression test) public LineNumberReader_Test24() { super("\r\n\r"); try { System.out.println(lnr.read()); System.out.println(lnr.read()); System.out.println(lnr.read()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test25 extends NewLNR { // read \r\r\n (compression test) public LineNumberReader_Test25() { super("\r\r\n"); try { char [] ch = new char[1]; System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(lnr.getLineNumber()); success(this.getClass()); } catch (Exception e) { failure(this.getClass(), e); } }}class LineNumberReader_Test26 extends NewLNR { // read \r\n\r (compression test) // with interleaving read() and read (,,) public LineNumberReader_Test26() { super("\r\n\r"); try { char [] ch = new char[1]; System.out.println(lnr.read()); System.out.println(new Integer(lnr.read(ch,0,1)).toString() + " , " + new Integer(ch[0]).toString()); System.out.println(lnr.read()); System.out.println(lnr.getLineNumber());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -