[Seasar-user:2190] Re: TextUtilTest の expected

Koichi Kobayashi koichik
2005年 6月 15日 (水) 03:00:20 JST


小林 (koichik) です.

非 Windows 環境をお使いの方へのお願いです.

Date:    Wed, 15 Jun 2005 01:58:02 +0900
From:    Satoshi Kimura <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:2187] Re: TextUtilTest の  expected

> 古い話ですが、TextUtilの中身では、改行コード意識しないで、
> ただ読み込んでるだけになってます。
> なので、改行コードが\r\nだったら\r\nのままのはずなので、
> VMのバグだと思われます。

に関わらず TextUtil が機能することを確認したいので,添付の
テキストファイル 3 つを src/test/org/seasar/framework/util に
配置した上で,以下のパッチを適用した TextUtilTest (または添付の
TextUtilTest.java) が成功するか確認して頂けると助かります.

非 Windows 環境としては以下のものがあると思われます.

改行コードが LF な UNIX / Linux (Mac OS X を含む?)
改行コードが CR な Mac (OS 9 以前?)

テストした環境 (OS,JVM のベンダとバージョン) とその結果を
こちらの ML までお寄せください.
ご協力,よろしくお願いします.


Index: TextUtilTest.java
===================================================================
RCS file: /cvsroot/seasar/seasar2/src/test/org/seasar/framework/util/TextUtilTest.java,v
retrieving revision 1.2
diff -u -r1.2 TextUtilTest.java
--- TextUtilTest.java	12 Apr 2005 03:57:20 -0000	1.2
+++ TextUtilTest.java	14 Jun 2005 17:24:25 -0000
@@ -1,5 +1,7 @@
 package test.org.seasar.framework.util;
 
+import java.util.regex.Pattern;
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
@@ -7,16 +9,28 @@
 import org.seasar.framework.util.TextUtil;
 
 public class TextUtilTest extends TestCase {
+    Pattern pattern = Pattern.compile("aaa(\\r|\\n|\\r\\n)bbb");
 
 	public TextUtilTest(String name) {
 		super(name);
 	}
 
-	public void testReadText() throws Exception {
+	public void testReadTextCr() throws Exception {
+		String path = getClass().getPackage().getName().replace('.', '/') +
+			"/hoge_cr.txt";
+		assertTrue("1", pattern.matcher(TextUtil.readText(path)).matches());
+	}
+
+	public void testReadTextLf() throws Exception {
+		String path = getClass().getPackage().getName().replace('.', '/') +
+			"/hoge_lf.txt";
+		assertTrue("1", pattern.matcher(TextUtil.readText(path)).matches());
+	}
+
+	public void testReadTextCrLf() throws Exception {
 		String path = getClass().getPackage().getName().replace('.', '/') +
-			"/hoge.txt";
-		String expected = "aaa" + System.getProperty("line.separator") + "bbb";
-		assertEquals("1", expected, TextUtil.readText(path));
+			"/hoge_crlf.txt";
+		assertTrue("1", pattern.matcher(TextUtil.readText(path)).matches());
 	}
 
 	protected void setUp() throws Exception {




-- 
<signature>
    <name>Koichi Kobayashi</name>
    <e-mail>[E-MAIL ADDRESS DELETED]</e-mail>
</signature>
-------------- next part --------------
テキスト形式以外の添付ファイルを除去しました...
ファイル名: hoge_crlf.txt
型:         application/octet-stream
サイズ:     8 バイト
説明:       無し
URL:        http://lists.sourceforge.jp/mailman/archives/seasar-user/attachments/20050615/ee48366e/hoge_crlf.obj
-------------- next part --------------
テキスト形式以外の添付ファイルを除去しました...
ファイル名: hoge_lf.txt
型:         application/octet-stream
サイズ:     7 バイト
説明:       無し
URL:        http://lists.sourceforge.jp/mailman/archives/seasar-user/attachments/20050615/ee48366e/hoge_lf.obj
-------------- next part --------------
テキスト形式以外の添付ファイルを除去しました...
ファイル名: hoge_cr.txt
型:         application/octet-stream
サイズ:     7 バイト
説明:       無し
URL:        http://lists.sourceforge.jp/mailman/archives/seasar-user/attachments/20050615/ee48366e/hoge_cr.obj
-------------- next part --------------
テキスト形式以外の添付ファイルを除去しました...
ファイル名: TextUtilTest.java
型:         application/octet-stream
サイズ:     1378 バイト
説明:       無し
URL:        http://lists.sourceforge.jp/mailman/archives/seasar-user/attachments/20050615/ee48366e/TextUtilTest.obj



Seasar-user メーリングリストの案内