simple-templater 0.1.pre → 0.2.pre

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.
Files changed (43) hide show
  1. data/README.textile +2 -2
  2. data/Rakefile +3 -12
  3. data/deps.rip +1 -0
  4. data/deps.rip.rbe +1 -0
  5. data/lib/simple-templater/builder.rb +7 -7
  6. data/lib/simple-templater/generator.rb +5 -5
  7. data/lib/simple-templater/generator_set.rb +1 -1
  8. data/lib/simple-templater/helpers.rb +4 -3
  9. data/lib/simple-templater/hooks/hook.rb +8 -8
  10. data/lib/simple-templater/version.rb +1 -1
  11. data/lib/simple-templater.rb +2 -2
  12. data/script/spec +10 -2
  13. data/simple-templater.gemspec +9 -0
  14. data/simple-templater.pre.gemspec +10 -1
  15. data/spec/simple-templater/helpers_spec.rb +2 -2
  16. data/spec/simple-templater/hooks/hook_spec.rb +1 -0
  17. data/spec/simple-templater/hooks/postprocess/git_repository_spec.rb +1 -0
  18. data/spec/simple-templater_spec.rb +8 -0
  19. data/spec/spec_helper.rb +0 -33
  20. data/stubs/project/content/%name%.gemspec.rbt +1 -1
  21. data/tasks/gem.rake +1 -1
  22. data/tasks/spec.rake +3 -3
  23. data/vendor/abstract/ChangeLog +3 -0
  24. data/vendor/abstract/README.txt +57 -0
  25. data/vendor/abstract/abstract.gemspec +48 -0
  26. data/vendor/abstract/doc/classes/Kernel.html +134 -0
  27. data/vendor/abstract/doc/classes/Kernel.src/M000002.html +24 -0
  28. data/vendor/abstract/doc/classes/Module.html +140 -0
  29. data/vendor/abstract/doc/classes/Module.src/M000001.html +20 -0
  30. data/vendor/abstract/doc/created.rid +1 -0
  31. data/vendor/abstract/doc/files/README_txt.html +173 -0
  32. data/vendor/abstract/doc/files/lib/abstract_rb.html +137 -0
  33. data/vendor/abstract/doc/fr_class_index.html +28 -0
  34. data/vendor/abstract/doc/fr_file_index.html +28 -0
  35. data/vendor/abstract/doc/fr_method_index.html +28 -0
  36. data/vendor/abstract/doc/index.html +24 -0
  37. data/vendor/abstract/doc/rdoc-style.css +208 -0
  38. data/vendor/abstract/lib/abstract.rb +75 -0
  39. data/vendor/abstract/setup.rb +1331 -0
  40. data/vendor/abstract/test/test.rb +91 -0
  41. metadata +31 -4
  42. data/Gemfile +0 -12
  43. data/lib/simple-templater/core_exts.rb +0 -99
@@ -0,0 +1,91 @@
1
+ ##
2
+ ## $Rev: 1 $
3
+ ## $Release: 1.0.0 $
4
+ ## copyright(c) 2006 kuwata-lab.com all rights reserved.
5
+ ##
6
+
7
+ testdir = File.dirname(File.expand_path(__FILE__))
8
+ libdir = File.dirname(testdir) + "/lib"
9
+ $: << libdir
10
+
11
+
12
+ require 'test/unit'
13
+ require 'abstract'
14
+
15
+
16
+ class Foo
17
+ abstract_method "arg1, arg2=''", :m1, :m2, :m3
18
+ end
19
+
20
+
21
+ class Bar
22
+ def m1(arg1, arg2='')
23
+ not_implemented
24
+ end
25
+ end
26
+
27
+
28
+
29
+ class AbstractTest < Test::Unit::TestCase
30
+
31
+
32
+ def _test(obj)
33
+ assert_raise(NotImplementedError) do
34
+ begin
35
+ obj = Foo.new
36
+ obj.m1 'a'
37
+ rescue => ex
38
+ linenum = (ex.backtrace[0] =~ /:(\d+)/) && $1
39
+ raise ex
40
+ end
41
+ end
42
+ end
43
+
44
+
45
+ def test_abstract_method1
46
+ obj = Foo.new
47
+ assert_raise(NotImplementedError) { obj.m1 'a' }
48
+ assert_raise(NotImplementedError) { obj.m2 'a', 'b' }
49
+ end
50
+
51
+
52
+ def test_abstract_method2
53
+ begin
54
+ obj = Foo.new
55
+ linenum = __LINE__; obj.m1 'a'
56
+ rescue NotImplementedError => ex
57
+ actual_linenum = (ex.backtrace[0] =~ /:(\d+)/) && $1.to_i
58
+ end
59
+ assert_equal linenum, actual_linenum
60
+ end
61
+
62
+
63
+ def test_not_implemented1
64
+ obj = Bar.new
65
+ assert_raise(NotImplementedError) { obj.m1 123 }
66
+ end
67
+
68
+
69
+ def test_not_implemented2
70
+ begin
71
+ obj = Bar.new
72
+ linenum = __LINE__; obj.m1 'a'
73
+ rescue NotImplementedError => ex
74
+ actual_linenum = (ex.backtrace[0] =~ /:(\d+)/) && $1.to_i
75
+ end
76
+ assert_equal linenum, actual_linenum
77
+ end
78
+
79
+
80
+ def test_not_implemented3
81
+ begin
82
+ obj = Bar.new
83
+ obj.not_implemented
84
+ rescue Exception => ex
85
+ assert_instance_of(NoMethodError, ex)
86
+ assert_match(/private method/, ex.message)
87
+ end
88
+ end
89
+
90
+
91
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple-templater
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.pre
4
+ version: 0.2.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - "Jakub \xC5\xA0\xC5\xA5astn\xC3\xBD aka Botanicus"
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
- date: 2010-01-01 00:00:00 +00:00
11
+ date: 2009-12-13 00:00:00 +00:00
12
12
  default_executable: simple-templater
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
@@ -21,6 +21,16 @@ dependencies:
21
21
  - !ruby/object:Gem::Version
22
22
  version: "0"
23
23
  version:
24
+ - !ruby/object:Gem::Dependency
25
+ name: rubyexts
26
+ type: :runtime
27
+ version_requirement:
28
+ version_requirements: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: "0"
33
+ version:
24
34
  - !ruby/object:Gem::Dependency
25
35
  name: erubis
26
36
  type: :runtime
@@ -41,6 +51,24 @@ extra_rdoc_files: []
41
51
 
42
52
  files:
43
53
  - CHANGELOG
54
+ - vendor/abstract/setup.rb
55
+ - vendor/abstract/ChangeLog
56
+ - vendor/abstract/lib/abstract.rb
57
+ - vendor/abstract/README.txt
58
+ - vendor/abstract/doc/index.html
59
+ - vendor/abstract/doc/classes/Kernel.html
60
+ - vendor/abstract/doc/classes/Kernel.src/M000002.html
61
+ - vendor/abstract/doc/classes/Module.html
62
+ - vendor/abstract/doc/classes/Module.src/M000001.html
63
+ - vendor/abstract/doc/fr_method_index.html
64
+ - vendor/abstract/doc/files/lib/abstract_rb.html
65
+ - vendor/abstract/doc/files/README_txt.html
66
+ - vendor/abstract/doc/fr_file_index.html
67
+ - vendor/abstract/doc/rdoc-style.css
68
+ - vendor/abstract/doc/created.rid
69
+ - vendor/abstract/doc/fr_class_index.html
70
+ - vendor/abstract/abstract.gemspec
71
+ - vendor/abstract/test/test.rb
44
72
  - deps.rip
45
73
  - lib/simple-templater.rb
46
74
  - lib/simple-templater/generator_set.rb
@@ -56,14 +84,12 @@ files:
56
84
  - lib/simple-templater/hooks/preprocess/github.rb
57
85
  - lib/simple-templater/hooks/preprocess/full_name.rb
58
86
  - lib/simple-templater/discoverer.rb
59
- - lib/simple-templater/core_exts.rb
60
87
  - lib/simple-templater/dsl.rb
61
88
  - lib/simple-templater/version.rb
62
89
  - lib/simple-templater/builder.rb
63
90
  - LICENSE
64
91
  - README.textile
65
92
  - simple-templater.gemspec
66
- - Gemfile
67
93
  - stubs/stub/metadata.yml
68
94
  - stubs/stub/setup.rb
69
95
  - stubs/stub/content/setup.rb
@@ -134,6 +160,7 @@ files:
134
160
  - spec/simple-templater/hooks/postprocess/git_repository_spec.rb
135
161
  - spec/simple-templater/hooks/postprocess/github_spec.rb
136
162
  - spec/simple-templater/helpers_spec.rb
163
+ - simple-templater-0.2.pre.gem
137
164
  has_rdoc: true
138
165
  homepage: http://github.com/botanicus/simple-templater
139
166
  licenses: []
data/Gemfile DELETED
@@ -1,12 +0,0 @@
1
- bundle_path "gems"
2
-
3
- gem "erubis"
4
-
5
- gem "haml"
6
- gem "erubis"
7
-
8
- only(:test) do
9
- gem "rspec"
10
- end
11
-
12
- bin_path "script"
@@ -1,99 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'open3'
4
-
5
- module Kernel
6
- def sh(command)
7
- puts "[SHELL] #{command}"
8
- Open3.popen3("sh", "-c", command) do |stdin, stderr, stdout|
9
- puts stdout.read
10
- puts stderr.read
11
- end
12
- end
13
- end
14
-
15
- module Enumerable
16
- # similar to
17
- def inject!(&block)
18
- self.inject(self.class.new, &block)
19
- end
20
- end
21
-
22
- class String
23
- ##
24
- # Convert to snake case.
25
- #
26
- # "FooBar".snake_case #=> "foo_bar"
27
- # "HeadlineCNNNews".snake_case #=> "headline_cnn_news"
28
- # "CNN".snake_case #=> "cnn"
29
- #
30
- # @return [String] Receiver converted to snake case.
31
- #
32
- # @api public
33
- def snake_case
34
- return self.downcase if self =~ /^[A-Z]+$/
35
- self.gsub(/([A-Z]+)(?=[A-Z][a-z]?)|\B[A-Z]/, '_\&') =~ /_*(.*)/
36
- return $+.downcase
37
- end
38
-
39
- ##
40
- # Convert to camel case.
41
- #
42
- # "foo_bar".camel_case #=> "FooBar"
43
- #
44
- # @return [String] Receiver converted to camel case.
45
- #
46
- # @api public
47
- def camel_case
48
- return self if self !~ /_/ && self =~ /[A-Z]+.*/
49
- split('_').map{|e| e.capitalize}.join
50
- end
51
-
52
- ##
53
- # Convert a path string to a constant name.
54
- #
55
- # "merb/core_ext/string".to_const_string #=> "Merb::CoreExt::String"
56
- #
57
- # @return [String] Receiver converted to a constant name.
58
- #
59
- # @api public
60
- def to_const_string
61
- gsub(/\/(.?)/) { "::#{$1.upcase}" }.gsub(/(?:^|_)(.)/) { $1.upcase }
62
- end
63
-
64
- ##
65
- # Convert a constant name to a path, assuming a conventional structure.
66
- #
67
- # "FooBar::Baz".to_const_path # => "foo_bar/baz"
68
- #
69
- # @return [String] Path to the file containing the constant named by receiver
70
- # (constantized string), assuming a conventional structure.
71
- #
72
- # @api public
73
- def to_const_path
74
- snake_case.gsub(/::/, "/")
75
- end
76
- end
77
-
78
- class Hash
79
- # Return duplication of self with all keys non-recursively converted to symbols
80
- #
81
- # @author Botanicus
82
- # @since 0.0.2
83
- # @return [Hash] A hash with all keys transformed into symbols
84
- def symbolize_keys
85
- self.inject(Hash.new) do |result, array|
86
- result[array.first.to_sym] = array.last
87
- result
88
- end
89
- end
90
-
91
- # Replace keys in self by coresponding symbols
92
- #
93
- # @author Botanicus
94
- # @since 0.0.2
95
- # @return [Hash] A hash with all keys transformed into symbols
96
- def symbolize_keys!
97
- self.replace(self.symbolize_keys)
98
- end
99
- end