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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
require 'abstract_unit'
class TemplateFileTest < Test::Unit::TestCase
LOAD_PATH_ROOT = File.join(File.dirname(__FILE__), '..', 'fixtures')
def setup
@template = ActionView::TemplateFile.new("test/hello_world.html.erb")
@another_template = ActionView::TemplateFile.new("test/hello_world.erb")
@file_only = ActionView::TemplateFile.new("hello_world.erb")
@full_path = ActionView::TemplateFile.new("/u/app/scales/config/../app/views/test/hello_world.erb", true)
@layout = ActionView::TemplateFile.new("layouts/hello")
@multipart = ActionView::TemplateFile.new("test_mailer/implicitly_multipart_example.text.html.erb")
end
def test_path
assert_equal "test/hello_world.html.erb", @template.path
assert_equal "test/hello_world.erb", @another_template.path
assert_equal "hello_world.erb", @file_only.path
assert_equal "/u/app/scales/config/../app/views/test/hello_world.erb", @full_path.path
assert_equal "layouts/hello", @layout.path
assert_equal "test_mailer/implicitly_multipart_example.text.html.erb", @multipart.path
end
def test_path_without_extension
assert_equal "test/hello_world.html", @template.path_without_extension
assert_equal "test/hello_world", @another_template.path_without_extension
assert_equal "hello_world", @file_only.path_without_extension
assert_equal "layouts/hello", @layout.path_without_extension
assert_equal "test_mailer/implicitly_multipart_example.text.html", @multipart.path_without_extension
end
def test_path_without_format_and_extension
assert_equal "test/hello_world", @template.path_without_format_and_extension
assert_equal "test/hello_world", @another_template.path_without_format_and_extension
assert_equal "hello_world", @file_only.path_without_format_and_extension
assert_equal "layouts/hello", @layout.path_without_format_and_extension
assert_equal "test_mailer/implicitly_multipart_example", @multipart.path_without_format_and_extension
end
def test_name
assert_equal "hello_world", @template.name
assert_equal "hello_world", @another_template.name
assert_equal "hello_world", @file_only.name
assert_equal "hello_world", @full_path.name
assert_equal "hello", @layout.name
assert_equal "implicitly_multipart_example", @multipart.name
end
def test_format
assert_equal "html", @template.format
assert_equal nil, @another_template.format
assert_equal nil, @layout.format
assert_equal "text.html", @multipart.format
end
def test_extension
assert_equal "erb", @template.extension
assert_equal "erb", @another_template.extension
assert_equal nil, @layout.extension
assert_equal "erb", @multipart.extension
end
def test_format_and_extension
assert_equal "html.erb", @template.format_and_extension
assert_equal "erb", @another_template.format_and_extension
assert_equal nil, @layout.format_and_extension
assert_equal "text.html.erb", @multipart.format_and_extension
end
def test_new_file_with_extension
file = @template.dup_with_extension(:haml)
assert_equal "test/hello_world.html", file.path_without_extension
assert_equal "haml", file.extension
assert_equal "test/hello_world.html.haml", file.path
file = @another_template.dup_with_extension(:haml)
assert_equal "test/hello_world", file.path_without_extension
assert_equal "haml", file.extension
assert_equal "test/hello_world.haml", file.path
file = @another_template.dup_with_extension(nil)
assert_equal "test/hello_world", file.path_without_extension
assert_equal nil, file.extension
assert_equal "test/hello_world", file.path
end
def test_freezes_entire_contents
@template.freeze
assert @template.frozen?
assert @template.base_path.frozen?
assert @template.name.frozen?
assert @template.format.frozen?
assert @template.extension.frozen?
end
end
|