成瀬です。

>> > やっぱりrubyspec や miniunit などのテストドライバのほうで
>> > エンコーディングを表示するのが正解なように思います。
> 
> 1.9 の test/unit ではやってますよ。

おお、確かに。
そういえば以前話題になってましたね。

>> これ手元でちょっと試してみたんですがだめですね。
>> > str.inspect.inspect != str.inspect になるせいで、
>> > 大量にテストが失敗します。
> 
> str.inspect.inspect != str.inspect は元々じゃないですか?

あれ、そうですね。
単に result.inspect == expected が軒並み失敗してるだけか。

一応パッチ。
Rubyのtest-allだけで130ほどエラーが増えます。

diff --git a/string.c b/string.c
index 3ba6693..9aae2fd 100644
--- a/string.c
+++ b/string.c
@@ -4150,7 +4150,9 @@ rb_str_inspect(VALUE str)
 	    }
 	}
     }
-    str_buf_cat2(result, "\"");
+    str_buf_cat2(result, "\"(");
+    str_buf_cat2(result, rb_enc_name(enc));
+    str_buf_cat2(result, ")");
 
     OBJ_INFECT(result, str);
     return result;

-- 
NARUSE, Yui  <naruse / airemix.jp>