temple 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,132 +0,0 @@
1
- # -*- coding: UTF-8 -*-
2
- require File.dirname(__FILE__) + '/../helper'
3
-
4
- if "".respond_to?(:encoding)
5
- class TestTempleEnginesERBM17N < Test::Unit::TestCase
6
- def setup
7
- Temple::Engines::ERB.rock!
8
- end
9
-
10
- def teardown
11
- Temple::Engines::ERB.rock!
12
- end
13
-
14
- def test_result_encoding
15
- erb = ERB.new("hello")
16
- assert_equal __ENCODING__, erb.result.encoding
17
-
18
- erb = ERB.new("こんにちは".encode("EUC-JP"))
19
- assert_equal Encoding::EUC_JP, erb.result.encoding
20
-
21
- erb = ERB.new("\xC4\xE3\xBA\xC3".force_encoding("EUC-CN"))
22
- assert_equal Encoding::EUC_CN, erb.result.encoding
23
-
24
- erb = ERB.new("γεια σας".encode("ISO-8859-7"))
25
- assert_equal Encoding::ISO_8859_7, erb.result.encoding
26
-
27
- assert_raise(ArgumentError) {
28
- ERB.new("こんにちは".force_encoding("ISO-2022-JP")) # dummy encoding
29
- }
30
- end
31
-
32
- def test_generate_magic_comment
33
- erb = ERB.new("hello")
34
- assert_match(/#coding:UTF-8/, erb.src)
35
-
36
- erb = ERB.new("hello".force_encoding("EUC-JP"))
37
- assert_match(/#coding:EUC-JP/, erb.src)
38
-
39
- erb = ERB.new("hello".force_encoding("ISO-8859-9"))
40
- assert_match(/#coding:ISO-8859-9/, erb.src)
41
- end
42
-
43
- def test_literal_encoding
44
- erb = ERB.new("literal encoding is <%= 'hello'.encoding %>")
45
- assert_match(/literal encoding is UTF-8/, erb.result)
46
-
47
- erb = ERB.new("literal encoding is <%= 'こんにちは'.encoding %>".encode("EUC-JP"))
48
- assert_match(/literal encoding is EUC-JP/, erb.result)
49
-
50
- erb = ERB.new("literal encoding is <%= '\xC4\xE3\xBA\xC3'.encoding %>".force_encoding("EUC-CN"))
51
- assert_match(/literal encoding is GB2312/, erb.result)
52
- end
53
-
54
- def test___ENCODING__
55
- erb = ERB.new("__ENCODING__ is <%= __ENCODING__ %>")
56
- assert_match(/__ENCODING__ is UTF-8/, erb.result)
57
-
58
- erb = ERB.new("__ENCODING__ is <%= __ENCODING__ %>".force_encoding("EUC-JP"))
59
- assert_match(/__ENCODING__ is EUC-JP/, erb.result)
60
-
61
- erb = ERB.new("__ENCODING__ is <%= __ENCODING__ %>".force_encoding("Big5"))
62
- assert_match(/__ENCODING__ is Big5/, erb.result)
63
- end
64
-
65
- def test_recognize_magic_comment
66
- erb = ERB.new(<<-EOS.encode("EUC-KR"))
67
- <%# -*- coding: EUC-KR -*- %>
68
- 안녕하세요
69
- EOS
70
- assert_match(/#coding:EUC-KR/, erb.src)
71
- assert_equal Encoding::EUC_KR, erb.result.encoding
72
-
73
- erb = ERB.new(<<-EOS.encode("EUC-KR").force_encoding("ASCII-8BIT"))
74
- <%#-*- coding: EUC-KR -*-%>
75
- 안녕하세요
76
- EOS
77
- assert_match(/#coding:EUC-KR/, erb.src)
78
- assert_equal Encoding::EUC_KR, erb.result.encoding
79
-
80
- erb = ERB.new(<<-EOS.encode("EUC-KR").force_encoding("ASCII-8BIT"))
81
- <%# vim: tabsize=8 encoding=EUC-KR shiftwidth=2 expandtab %>
82
- 안녕하세요
83
- EOS
84
- assert_match(/#coding:EUC-KR/, erb.src)
85
- assert_equal Encoding::EUC_KR, erb.result.encoding
86
-
87
- erb = ERB.new(<<-EOS.encode("EUC-KR").force_encoding("ASCII-8BIT"))
88
- <%#coding:EUC-KR %>
89
- 안녕하세요
90
- EOS
91
- assert_match(/#coding:EUC-KR/, erb.src)
92
- assert_equal Encoding::EUC_KR, erb.result.encoding
93
-
94
- erb = ERB.new(<<-EOS.encode("EUC-KR").force_encoding("EUC-JP"))
95
- <%#coding:EUC-KR %>
96
- 안녕하세요
97
- EOS
98
- assert_match(/#coding:EUC-KR/, erb.src)
99
- assert_equal Encoding::EUC_KR, erb.result.encoding
100
- end
101
-
102
- module M; end
103
- def test_method_with_encoding
104
- obj = Object.new
105
- obj.extend(M)
106
-
107
- erb = ERB.new(<<-EOS.encode("EUC-JP").force_encoding("ASCII-8BIT"))
108
- <%#coding:EUC-JP %>
109
- literal encoding is <%= 'こんにちは'.encoding %>
110
- __ENCODING__ is <%= __ENCODING__ %>
111
- EOS
112
- erb.def_method(M, :m_from_magic_comment)
113
-
114
- result = obj.m_from_magic_comment
115
- assert_equal Encoding::EUC_JP, result.encoding
116
- assert_match(/literal encoding is EUC-JP/, result)
117
- assert_match(/__ENCODING__ is EUC-JP/, result)
118
-
119
- erb = ERB.new(<<-EOS.encode("EUC-KR"))
120
- literal encoding is <%= '안녕하세요'.encoding %>
121
- __ENCODING__ is <%= __ENCODING__ %>
122
- EOS
123
- erb.def_method(M, :m_from_eval_encoding)
124
- result = obj.m_from_eval_encoding
125
- assert_equal Encoding::EUC_KR, result.encoding
126
- assert_match(/literal encoding is EUC-KR/, result)
127
- assert_match(/__ENCODING__ is EUC-KR/, result)
128
- end
129
- end
130
- end
131
-
132
- # vim:fileencoding=UTF-8
data/test/test_temple.rb DELETED
@@ -1,28 +0,0 @@
1
- require File.dirname(__FILE__) + '/helper'
2
-
3
- class TestTempleGenerator < Test::Unit::TestCase
4
- def spec
5
- @spec ||= begin
6
- require 'rubygems'
7
- require 'rubygems/specification'
8
-
9
- Gem::Specification.load(File.dirname(__FILE__) + '/../temple.gemspec')
10
- end
11
- end
12
-
13
- def test_correct_version
14
- assert_equal(spec.version.to_s, Temple::VERSION)
15
- end
16
-
17
- def test_files_included(base = Temple)
18
- return unless base.respond_to?(:constants)
19
-
20
- base.constants.each do |const|
21
- if path = base.autoload?(const)
22
- assert(spec.files.include?("lib/#{path}.rb"), "gemspec did not include lib/#{path}.rb")
23
- else
24
- test_files_included(base.const_get(const))
25
- end
26
- end
27
- end
28
- end