tbpgr_utils 0.0.54 → 0.0.55

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.
data/README.md CHANGED
@@ -59,7 +59,8 @@ Or install it yourself as:
59
59
  |[EndERB.apply](#enderbapply) |for single template script using __END__ and DATA |
60
60
  |[EvalHelper#if_code](#evalhelperif_code) |create if strings, for eval |
61
61
  |[EvalHelper#if_code_after](#evalhelperif_code_after) |create after-if strings, for eval |
62
- |[EvalHelper#unless_code](#evalhelperunless_code_after) |create after-unless strings, for eval |
62
+ |[EvalHelper#unless_code](#evalhelperunless_code) |create unless strings, for eval |
63
+ |[EvalHelper#unless_code_After](#evalhelperunless_code_after) |create after-unless strings, for eval |
63
64
  |[TbpgrUtils File.insert_bom](#fileinsert_bom) |insert BOM to UTF-8 File |
64
65
  |[Ghostable module](#ghostable) |help to create ghost method(dynamic method define by ussing method_missing + pattern-method-name) |
65
66
  |[TbpgrUtils Kernel#bulk_define_methods](#kernelbulk_define_methods) |define methods to classes. methods have simple return value. |
@@ -1428,7 +1429,7 @@ end
1428
1429
  hash = {
1429
1430
  input: "test",
1430
1431
  if_cond: "msg == 'test'",
1431
- if_proc: "ret = "true"",
1432
+ if_proc: "ret = 'true'",
1432
1433
  }
1433
1434
  EvalHelperTest.new.hoge(hash) # => return 'true'
1434
1435
  ~~~
@@ -1453,12 +1454,11 @@ end
1453
1454
  hash = {
1454
1455
  input: "not_test",
1455
1456
  if_cond: "msg == 'test'",
1456
- if_proc: "ret = "true"",
1457
+ if_proc: "ret = 'true'",
1457
1458
  }
1458
1459
  EvalHelperTest.new.hoge(hash) # => return 'default'
1459
1460
  ~~~
1460
1461
 
1461
-
1462
1462
  [back to list](#list)
1463
1463
 
1464
1464
  ### EvalHelper#unless_code
@@ -1509,6 +1509,59 @@ EvalHelperTest.new.hoge(hash) # => return false
1509
1509
 
1510
1510
  [back to list](#list)
1511
1511
 
1512
+ ### EvalHelper#unless_code_after
1513
+ unless case
1514
+
1515
+ ~~~ruby
1516
+ require 'eval_helper'
1517
+
1518
+ class EvalHelperTest
1519
+ include EvalHelper
1520
+
1521
+ def hoge(hash)
1522
+ msg = hash[:input]
1523
+ code = unless_code_after(hash[:unless_cond], hash[:unless_proc])
1524
+ ret = 'dafault'
1525
+ instance_eval code
1526
+ ret
1527
+ end
1528
+ end
1529
+
1530
+ hash = {
1531
+ input: "not_test",
1532
+ unless_cond: "msg == 'test'",
1533
+ unless_proc: "ret = 'true'",
1534
+ }
1535
+ EvalHelperTest.new.hoge(hash) # => return 'true'
1536
+ ~~~
1537
+
1538
+ else case
1539
+
1540
+ ~~~ruby
1541
+ require 'eval_helper'
1542
+
1543
+ class EvalHelperTest
1544
+ include EvalHelper
1545
+
1546
+ def hoge(hash)
1547
+ msg = hash[:input]
1548
+ code = unless_code_after(hash[:unless_cond], hash[:unless_proc])
1549
+ ret = 'ret = "true"'
1550
+ instance_eval code
1551
+ ret
1552
+ end
1553
+ end
1554
+
1555
+ hash = {
1556
+ input: "test",
1557
+ unless_cond: "msg == 'test'",
1558
+ unless_proc: "ret = 'true'",
1559
+ }
1560
+ EvalHelperTest.new.hoge(hash) # => return 'default'
1561
+ ~~~
1562
+
1563
+ [back to list](#list)
1564
+
1512
1565
  ### MetasyntacticVariable
1513
1566
  * META variable
1514
1567
 
@@ -2016,6 +2069,7 @@ if you are Sublime Text2 user, you can use snippet for TbpgrUtils.
2016
2069
  https://github.com/tbpgr/tbpgr_utils_snippets
2017
2070
 
2018
2071
  ## History
2072
+ * version 0.0.55 : add EvalHelper#unless_code_after
2019
2073
  * version 0.0.54 : add EvalHelper#unless_code
2020
2074
  * version 0.0.53 : add EvalHelper#if_code_after
2021
2075
  * version 0.0.52 : add EvalHelper#if_code
@@ -1,57 +1,57 @@
1
- # encoding: utf-8
2
-
3
- module EvalHelper
4
- # create unless strings, for eval
5
- #
6
- # ==== Examples
7
- #
8
- # unless case
9
- #
10
- # class EvalHelperTest
11
- # include EvalHelper
12
- #
13
- # def hoge(hash)
14
- # msg = hash[:input]
15
- # code = unless_code(hash[:unless_cond], hash[:unless_proc], hash[:else_proc])
16
- # instance_eval code
17
- # end
18
- # end
19
- #
20
- # hash = {
21
- # input: "not_test",
22
- # unless_cond: "msg == 'test'",
23
- # unless_proc: "true",
24
- # else_proc: "false",
25
- # }
26
- # EvalHelperTest.new.hoge(hash) # => return true
27
- #
28
- # else case
29
- #
30
- # class EvalHelperTest
31
- # include EvalHelper
32
- #
33
- # def hoge(hash)
34
- # msg = hash[:input]
35
- # code = unless_code(hash[:unless_cond], hash[:unless_proc], hash[:else_proc])
36
- # instance_eval code
37
- # end
38
- # end
39
- #
40
- # hash = {
41
- # input: "test",
42
- # unless_cond: "msg == 'test'",
43
- # unless_proc: "true",
44
- # else_proc: "false",
45
- # }
46
- # EvalHelperTest.new.hoge(hash) # => return false
47
- #
48
- def unless_code(condition, unless_proc, else_proc)
49
- <<-EOS
50
- unless #{condition}
51
- #{unless_proc}
52
- else
53
- #{else_proc}
54
- end
55
- EOS
56
- end
57
- end
1
+ # encoding: utf-8
2
+
3
+ module EvalHelper
4
+ # create unless strings, for eval
5
+ #
6
+ # ==== Examples
7
+ #
8
+ # unless case
9
+ #
10
+ # class EvalHelperTest
11
+ # include EvalHelper
12
+ #
13
+ # def hoge(hash)
14
+ # msg = hash[:input]
15
+ # code = unless_code(hash[:unless_cond], hash[:unless_proc], hash[:else_proc])
16
+ # instance_eval code
17
+ # end
18
+ # end
19
+ #
20
+ # hash = {
21
+ # input: "not_test",
22
+ # unless_cond: "msg == 'test'",
23
+ # unless_proc: "true",
24
+ # else_proc: "false",
25
+ # }
26
+ # EvalHelperTest.new.hoge(hash) # => return true
27
+ #
28
+ # else case
29
+ #
30
+ # class EvalHelperTest
31
+ # include EvalHelper
32
+ #
33
+ # def hoge(hash)
34
+ # msg = hash[:input]
35
+ # code = unless_code(hash[:unless_cond], hash[:unless_proc], hash[:else_proc])
36
+ # instance_eval code
37
+ # end
38
+ # end
39
+ #
40
+ # hash = {
41
+ # input: "test",
42
+ # unless_cond: "msg == 'test'",
43
+ # unless_proc: "true",
44
+ # else_proc: "false",
45
+ # }
46
+ # EvalHelperTest.new.hoge(hash) # => return false
47
+ #
48
+ def unless_code(condition, unless_proc, else_proc)
49
+ <<-EOS
50
+ unless #{condition}
51
+ #{unless_proc}
52
+ else
53
+ #{else_proc}
54
+ end
55
+ EOS
56
+ end
57
+ end
@@ -0,0 +1,53 @@
1
+ # encoding: utf-8
2
+
3
+ module EvalHelper
4
+ # create unless strings, for eval
5
+ #
6
+ # ==== Examples
7
+ #
8
+ # unless case
9
+ #
10
+ # class EvalHelperTest
11
+ # include EvalHelper
12
+ #
13
+ # def hoge(hash)
14
+ # msg = hash[:input]
15
+ # code = unless_code_after(hash[:unless_cond], hash[:unless_proc])
16
+ # ret = 'dafault'
17
+ # instance_eval code
18
+ # ret
19
+ # end
20
+ # end
21
+ #
22
+ # hash = {
23
+ # input: "not_test",
24
+ # unless_cond: "msg == 'test'",
25
+ # unless_proc: "ret = "true"",
26
+ # }
27
+ # EvalHelperTest.new.hoge(hash) # => return 'true'
28
+ #
29
+ # else case
30
+ #
31
+ # class EvalHelperTest
32
+ # include EvalHelper
33
+ #
34
+ # def hoge(hash)
35
+ # msg = hash[:input]
36
+ # code = unless_code_after(hash[:unless_cond], hash[:unless_proc])
37
+ # ret = 'ret = "true"'
38
+ # instance_eval code
39
+ # ret
40
+ # end
41
+ # end
42
+ #
43
+ # hash = {
44
+ # input: "test",
45
+ # unless_cond: "msg == 'test'",
46
+ # unless_proc: "ret = "true"",
47
+ # }
48
+ # EvalHelperTest.new.hoge(hash) # => return 'default'
49
+ #
50
+ def unless_code_after(condition, unless_proc)
51
+ "#{unless_proc} unless #{condition}"
52
+ end
53
+ end
data/lib/eval_helper.rb CHANGED
@@ -1,7 +1,8 @@
1
- # encoding: utf-8
2
-
3
- module EvalHelper
4
- require 'eval_helper/if_code'
5
- require 'eval_helper/if_code_after'
6
- require 'eval_helper/else_code'
7
- end
1
+ # encoding: utf-8
2
+
3
+ module EvalHelper
4
+ require 'eval_helper/if_code'
5
+ require 'eval_helper/if_code_after'
6
+ require 'eval_helper/unless_code'
7
+ require 'eval_helper/unless_code_after'
8
+ end
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Tbpgr Utilities
4
4
  module TbpgrUtils
5
- VERSION = '0.0.54'
5
+ VERSION = '0.0.55'
6
6
  end
@@ -0,0 +1,64 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+ require 'eval_helper'
4
+
5
+ describe 'EvalHelper' do
6
+ context :unless_code_after do
7
+ class EvalHelperUnlessAfterTest
8
+ include EvalHelper
9
+
10
+ def hoge(hash)
11
+ msg = hash[:input]
12
+ code = unless_code_after(hash[:unless_cond], hash[:unless_proc])
13
+ ret = 'dafault'
14
+ instance_eval code
15
+ ret
16
+ end
17
+ end
18
+ cases = [
19
+ {
20
+ case_no: 1,
21
+ case_title: 'if case',
22
+ input: 'not_test',
23
+ unless_cond: "msg == 'test'",
24
+ unless_proc: 'ret = "true"',
25
+ expected: 'true',
26
+ },
27
+ {
28
+ case_no: 2,
29
+ case_title: 'else case',
30
+ input: 'test',
31
+ unless_cond: "msg == 'test'",
32
+ unless_proc: 'ret = "true"',
33
+ expected: 'dafault',
34
+ },
35
+ ]
36
+
37
+ cases.each do |c|
38
+ it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do
39
+ begin
40
+ case_before c
41
+
42
+ # -- given --
43
+ eval_helper = EvalHelperUnlessAfterTest.new
44
+
45
+ # -- when --
46
+ actual = eval_helper.hoge(c)
47
+
48
+ # -- then --
49
+ expect(actual).to eq(c[:expected])
50
+ ensure
51
+ case_after c
52
+ end
53
+ end
54
+
55
+ def case_before(c)
56
+ # implement each case before
57
+ end
58
+
59
+ def case_after(c)
60
+ # implement each case after
61
+ end
62
+ end
63
+ end
64
+ end
@@ -1,64 +1,64 @@
1
- # encoding: utf-8
2
- require 'spec_helper'
3
- require 'eval_helper'
4
-
5
- describe 'EvalHelper' do
6
- context :unless_code do
7
- class EvalHelperUnlessTest
8
- include EvalHelper
9
-
10
- def hoge(hash)
11
- msg = hash[:input]
12
- code = unless_code(hash[:unless_cond], hash[:unless_proc], hash[:else_proc])
13
- instance_eval code
14
- end
15
- end
16
- cases = [
17
- {
18
- case_no: 1,
19
- case_title: 'unless case',
20
- input: 'not_test',
21
- unless_cond: "msg == 'test'",
22
- unless_proc: 'true',
23
- else_proc: 'false',
24
- expected: true,
25
- },
26
- {
27
- case_no: 2,
28
- case_title: 'else case',
29
- input: 'test',
30
- unless_cond: "msg == 'test'",
31
- unless_proc: 'true',
32
- else_proc: 'false',
33
- expected: false,
34
- },
35
- ]
36
-
37
- cases.each do |c|
38
- it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do
39
- begin
40
- case_before c
41
-
42
- # -- given --
43
- eval_helper = EvalHelperUnlessTest.new
44
-
45
- # -- when --
46
- actual = eval_helper.hoge(c)
47
-
48
- # -- then --
49
- expect(actual).to eq(c[:expected])
50
- ensure
51
- case_after c
52
- end
53
- end
54
-
55
- def case_before(c)
56
- # implement each case before
57
- end
58
-
59
- def case_after(c)
60
- # implement each case after
61
- end
62
- end
63
- end
64
- end
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+ require 'eval_helper'
4
+
5
+ describe 'EvalHelper' do
6
+ context :unless_code do
7
+ class EvalHelperUnlessTest
8
+ include EvalHelper
9
+
10
+ def hoge(hash)
11
+ msg = hash[:input]
12
+ code = unless_code(hash[:unless_cond], hash[:unless_proc], hash[:else_proc])
13
+ instance_eval code
14
+ end
15
+ end
16
+ cases = [
17
+ {
18
+ case_no: 1,
19
+ case_title: 'unless case',
20
+ input: 'not_test',
21
+ unless_cond: "msg == 'test'",
22
+ unless_proc: 'true',
23
+ else_proc: 'false',
24
+ expected: true,
25
+ },
26
+ {
27
+ case_no: 2,
28
+ case_title: 'else case',
29
+ input: 'test',
30
+ unless_cond: "msg == 'test'",
31
+ unless_proc: 'true',
32
+ else_proc: 'false',
33
+ expected: false,
34
+ },
35
+ ]
36
+
37
+ cases.each do |c|
38
+ it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do
39
+ begin
40
+ case_before c
41
+
42
+ # -- given --
43
+ eval_helper = EvalHelperUnlessTest.new
44
+
45
+ # -- when --
46
+ actual = eval_helper.hoge(c)
47
+
48
+ # -- then --
49
+ expect(actual).to eq(c[:expected])
50
+ ensure
51
+ case_after c
52
+ end
53
+ end
54
+
55
+ def case_before(c)
56
+ # implement each case before
57
+ end
58
+
59
+ def case_after(c)
60
+ # implement each case after
61
+ end
62
+ end
63
+ end
64
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tbpgr_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.54
4
+ version: 0.0.55
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-02 00:00:00.000000000 Z
12
+ date: 2014-03-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
- requirement: &26389572 !ruby/object:Gem::Requirement
16
+ requirement: &23251824 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 4.0.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *26389572
24
+ version_requirements: *23251824
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &26389284 !ruby/object:Gem::Requirement
27
+ requirement: &23251104 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.3'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *26389284
35
+ version_requirements: *23251104
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &26389056 !ruby/object:Gem::Requirement
38
+ requirement: &23250648 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *26389056
46
+ version_requirements: *23250648
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &26388732 !ruby/object:Gem::Requirement
49
+ requirement: &23250132 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.14.1
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *26388732
57
+ version_requirements: *23250132
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- requirement: &26388432 !ruby/object:Gem::Requirement
60
+ requirement: &23249760 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: 0.8.2
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *26388432
68
+ version_requirements: *23249760
69
69
  description: Utilities
70
70
  email:
71
71
  - tbpgr@tbpgr.jp
@@ -86,9 +86,10 @@ files:
86
86
  - lib/attributes_initializable.rb
87
87
  - lib/end_erb.rb
88
88
  - lib/eval_helper.rb
89
- - lib/eval_helper/else_code.rb
90
89
  - lib/eval_helper/if_code.rb
91
90
  - lib/eval_helper/if_code_after.rb
91
+ - lib/eval_helper/unless_code.rb
92
+ - lib/eval_helper/unless_code_after.rb
92
93
  - lib/ghostable.rb
93
94
  - lib/metasyntactic_variable.rb
94
95
  - lib/open_classes/array.rb
@@ -152,6 +153,7 @@ files:
152
153
  - spec/attributes_initializable_spec.rb
153
154
  - spec/eval_helper/if_code_after_spec.rb
154
155
  - spec/eval_helper/if_code_spec.rb
156
+ - spec/eval_helper/unless_code_after_spec.rb
155
157
  - spec/eval_helper/unless_code_spec.rb
156
158
  - spec/ghostable_spec.rb
157
159
  - spec/metasyntactic_variable_spec.rb
@@ -236,6 +238,7 @@ test_files:
236
238
  - spec/attributes_initializable_spec.rb
237
239
  - spec/eval_helper/if_code_after_spec.rb
238
240
  - spec/eval_helper/if_code_spec.rb
241
+ - spec/eval_helper/unless_code_after_spec.rb
239
242
  - spec/eval_helper/unless_code_spec.rb
240
243
  - spec/ghostable_spec.rb
241
244
  - spec/metasyntactic_variable_spec.rb