summaryrefslogtreecommitdiff
path: root/test/iconv/utils.rb
blob: 99dce20837ea30ef84da01d9e329bbc02b1ada48 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
begin
  require 'iconv'
rescue LoadError
else
  require 'test/unit'
end

module TestIconv
  if defined?(::Iconv)
    def self.testcase(name, &block)
      const_set(name, klass = Class.new(::Test::Unit::TestCase))
      klass.name
      klass.__send__(:include, self)
      klass.class_eval(&block)
    end
  else
    def self.testcase(name)
    end
  end
end

module TestIconv
  if defined?(::Encoding) and String.method_defined?(:force_encoding)
    def self.encode(str, enc)
      str.force_encoding(enc)
    end
  else
    def self.encode(str, enc)
      str
    end
  end

  ASCII = "ascii"
  EUCJ_STR = encode("\xa4\xa2\xa4\xa4\xa4\xa6\xa4\xa8\xa4\xaa", "EUC-JP").freeze
  SJIS_STR = encode("\x82\xa0\x82\xa2\x82\xa4\x82\xa6\x82\xa8", "Shift_JIS").freeze
end if defined?(::Iconv)