temple 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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