dslable 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,17 +1,17 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/gem_template"
4
- require "dslable_dsl"
2
+ require 'spec_helper'
3
+ require 'generators/gem_template'
4
+ require 'dslable_dsl'
5
5
 
6
6
  describe Dslable::Generators::GemTemplate do
7
7
  context :generate do
8
- OUTPUT_TMP_DIR = "generate_gem_template"
8
+ OUTPUT_TMP_DIR = 'generate_gem_template'
9
9
 
10
10
  cases = [
11
11
  {
12
12
  case_no: 1,
13
- case_title: "valid gem template",
14
- gem_name: "sample_gem"
13
+ case_title: 'valid gem template',
14
+ gem_name: 'sample_gem'
15
15
  },
16
16
  ]
17
17
 
@@ -43,7 +43,7 @@ describe Dslable::Generators::GemTemplate do
43
43
  end
44
44
 
45
45
  def case_after(c)
46
- Dir.chdir("../../")
46
+ Dir.chdir('../../')
47
47
  FileUtils.rm_rf(OUTPUT_TMP_DIR) if Dir.exists? OUTPUT_TMP_DIR
48
48
  end
49
49
  end
@@ -1,12 +1,12 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/product_codes/cli"
2
+ require 'spec_helper'
3
+ require 'generators/product_codes/cli'
4
4
 
5
5
  describe Dslable::Generators::ProductCodes::CLI do
6
6
 
7
7
  context :generate do
8
- OUTPUT_CLI_TMP_DIR = "generate_cli"
9
- OUTPUT_CLI_CASE1 =<<-EOF
8
+ OUTPUT_CLI_TMP_DIR = 'generate_cli'
9
+ OUTPUT_CLI_CASE1 = <<-EOF
10
10
  #!/usr/bin/env ruby
11
11
  # encoding: utf-8
12
12
 
@@ -42,16 +42,16 @@ SampleGem::CLI.start(ARGV)
42
42
  cases = [
43
43
  {
44
44
  case_no: 1,
45
- case_title: "generate",
46
- gem_name: "sample_gem",
47
- bin_name: "samplegem",
45
+ case_title: 'generate',
46
+ gem_name: 'sample_gem',
47
+ bin_name: 'samplegem',
48
48
  fields: [:field1, :field2, :field3, :field4, :field5, :field6],
49
- fields_descs: ["field_desc1", "field_desc2", "field_desc3", "field_desc4", "field_desc5", "field_desc6"],
49
+ fields_descs: ['field_desc1', 'field_desc2', 'field_desc3', 'field_desc4', 'field_desc5', 'field_desc6'],
50
50
  args: [:args1, :args2, :args3, :args4, :args5, :args6],
51
51
  args_klass: [String, Array, Hash, String, Array, Hash],
52
52
  args_required: [true, true, true, false, false, false],
53
- args_default: ["default1", ["default1", "default2"], {default_key: "default_value"}, nil, nil, nil],
54
- expected_file: "./bin/samplegem",
53
+ args_default: ['default1', ['default1', 'default2'], { default_key: 'default_value' }, nil, nil, nil],
54
+ expected_file: './bin/samplegem',
55
55
  expected_contents: OUTPUT_CLI_CASE1
56
56
  },
57
57
  ]
@@ -69,7 +69,7 @@ SampleGem::CLI.start(ARGV)
69
69
  gen_cli.generate
70
70
 
71
71
  # -- then --
72
- actual = File.open(c[:expected_file]) {|f|f.read}
72
+ actual = File.open(c[:expected_file]) { |f|f.read }
73
73
  expect(actual).to eq(c[:expected_contents])
74
74
  ensure
75
75
  case_after c
@@ -81,7 +81,7 @@ SampleGem::CLI.start(ARGV)
81
81
  # implement each case before
82
82
  Dir.mkdir(OUTPUT_CLI_TMP_DIR) unless Dir.exists? OUTPUT_CLI_TMP_DIR
83
83
  Dir.chdir(OUTPUT_CLI_TMP_DIR)
84
- Dir.mkdir "bin"
84
+ Dir.mkdir 'bin'
85
85
  end
86
86
 
87
87
  def setup_dsl(c, dsl)
@@ -102,7 +102,7 @@ SampleGem::CLI.start(ARGV)
102
102
 
103
103
  def case_after(c)
104
104
  # implement each case after
105
- Dir.chdir("../")
105
+ Dir.chdir('../')
106
106
  FileUtils.rm_rf(OUTPUT_CLI_TMP_DIR) if Dir.exists? OUTPUT_CLI_TMP_DIR
107
107
  end
108
108
  end
@@ -1,12 +1,13 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/product_codes/core"
4
- require "dslable_dsl"
2
+ require 'spec_helper'
3
+ require 'generators/product_codes/core'
4
+ require 'dslable_dsl'
5
+ require 'dslable_field'
5
6
 
6
7
  describe Dslable::Generators::ProductCodes::Core do
7
8
  context :generate do
8
- OUTPUT_CORE_TMP_DIR = "generate_core"
9
- OUTPUT_CORE_CASE1 =<<-EOF
9
+ OUTPUT_CORE_TMP_DIR = 'generate_core'
10
+ OUTPUT_CORE_CASE1 = <<-EOF
10
11
  # encoding: utf-8
11
12
  require 'sample_gem_dsl'
12
13
 
@@ -47,6 +48,12 @@ field5 ["your value"]
47
48
  # args6 allow only Hash
48
49
  field6 {"your key"=>"your value"}
49
50
 
51
+ # field_desc7
52
+ # args7 is required
53
+ # args7 allow only Boolean
54
+ # args7's default value => false
55
+ field7 false
56
+
50
57
  EOS
51
58
 
52
59
  #== generate Samplegemfile to current directory.
@@ -74,15 +81,15 @@ end
74
81
  cases = [
75
82
  {
76
83
  case_no: 1,
77
- case_title: "valid generate core class",
78
- gem_name: "sample_gem",
79
- fields: [:field1, :field2, :field3, :field4, :field5, :field6],
80
- fields_descs: ["field_desc1", "field_desc2", "field_desc3", "field_desc4", "field_desc5", "field_desc6"],
81
- args: [:args1, :args2, :args3, :args4, :args5, :args6],
82
- args_klass: [String, Array, Hash, String, Array, Hash],
83
- args_required: [true, true, true, false, false, false],
84
- args_default: ["default1", ["default1", "default2"], {default_key: "default_value"}, nil, nil, nil],
85
- expected_file: "./lib/sample_gem_core.rb",
84
+ case_title: 'valid generate core class',
85
+ gem_name: 'sample_gem',
86
+ fields: [:field1, :field2, :field3, :field4, :field5, :field6, :field7],
87
+ fields_descs: ['field_desc1', 'field_desc2', 'field_desc3', 'field_desc4', 'field_desc5', 'field_desc6', 'field_desc7'],
88
+ args: [:args1, :args2, :args3, :args4, :args5, :args6, :args7],
89
+ args_klass: [String, Array, Hash, String, Array, Hash, :Boolean],
90
+ args_required: [true, true, true, false, false, false, true],
91
+ args_default: ['default1', ['default1', 'default2'], { default_key: 'default_value' }, nil, nil, nil, false],
92
+ expected_file: './lib/sample_gem_core.rb',
86
93
  expected_contents: OUTPUT_CORE_CASE1
87
94
  },
88
95
 
@@ -101,7 +108,7 @@ end
101
108
  core.generate
102
109
 
103
110
  # -- then --
104
- actual = File.open(c[:expected_file]) {|f|f.read}
111
+ actual = File.open(c[:expected_file]) { |f|f.read }
105
112
  expect(actual).to eq(c[:expected_contents])
106
113
  ensure
107
114
  case_after c
@@ -111,7 +118,7 @@ end
111
118
  def case_before(c)
112
119
  Dir.mkdir(OUTPUT_CORE_TMP_DIR) unless Dir.exists? OUTPUT_CORE_TMP_DIR
113
120
  Dir.chdir(OUTPUT_CORE_TMP_DIR)
114
- Dir.mkdir "lib"
121
+ Dir.mkdir 'lib'
115
122
  end
116
123
 
117
124
  def setup_dsl(c, dsl)
@@ -130,7 +137,7 @@ end
130
137
  end
131
138
 
132
139
  def case_after(c)
133
- Dir.chdir("../")
140
+ Dir.chdir('../')
134
141
  FileUtils.rm_rf(OUTPUT_CORE_TMP_DIR) if Dir.exists? OUTPUT_CORE_TMP_DIR
135
142
  end
136
143
  end
@@ -1,12 +1,12 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/product_codes/dsl_model"
2
+ require 'spec_helper'
3
+ require 'generators/product_codes/dsl_model'
4
4
 
5
5
  describe Dslable::Generators::ProductCodes::DslModel do
6
6
 
7
7
  context :generate do
8
- OUTPUT_DSL_MODEL_TMP_DIR = "generate_dsl_model"
9
- OUTPUT_DSL_MODEL_CASE1 =<<-EOF
8
+ OUTPUT_DSL_MODEL_TMP_DIR = 'generate_dsl_model'
9
+ OUTPUT_DSL_MODEL_CASE1 = <<-EOF
10
10
  # encoding: utf-8
11
11
  require 'active_model'
12
12
 
@@ -42,15 +42,15 @@ end
42
42
  cases = [
43
43
  {
44
44
  case_no: 1,
45
- case_title: "generate",
46
- gem_name: "sample_gem",
45
+ case_title: 'generate',
46
+ gem_name: 'sample_gem',
47
47
  fields: [:field1, :field2, :field3, :field4, :field5, :field6],
48
- fields_descs: ["field_desc1", "field_desc2", "field_desc3", "field_desc4", "field_desc5", "field_desc6"],
48
+ fields_descs: ['field_desc1', 'field_desc2', 'field_desc3', 'field_desc4', 'field_desc5', 'field_desc6'],
49
49
  args: [:args1, :args2, :args3, :args4, :args5, :args6],
50
50
  args_klass: [String, Array, Hash, String, Array, Hash],
51
51
  args_required: [true, true, true, false, false, false],
52
- args_default: ["default1", ["default1", "default2"], {default_key: "default_value"}, nil, nil, nil],
53
- expected_file: "./lib/sample_gem_dsl_model.rb",
52
+ args_default: ['default1', ['default1', 'default2'], { default_key: 'default_value' }, nil, nil, nil],
53
+ expected_file: './lib/sample_gem_dsl_model.rb',
54
54
  expected_contents: OUTPUT_DSL_MODEL_CASE1
55
55
  },
56
56
  ]
@@ -68,7 +68,7 @@ end
68
68
  gen_dsl_model.generate
69
69
 
70
70
  # -- then --
71
- actual = File.open(c[:expected_file]) {|f|f.read}
71
+ actual = File.open(c[:expected_file]) { |f|f.read }
72
72
  expect(actual).to eq(c[:expected_contents])
73
73
  ensure
74
74
  case_after c
@@ -80,7 +80,7 @@ end
80
80
  # implement each case before
81
81
  Dir.mkdir(OUTPUT_DSL_MODEL_TMP_DIR) unless Dir.exists? OUTPUT_DSL_MODEL_TMP_DIR
82
82
  Dir.chdir(OUTPUT_DSL_MODEL_TMP_DIR)
83
- Dir.mkdir "lib"
83
+ Dir.mkdir 'lib'
84
84
  end
85
85
 
86
86
  def setup_dsl(c, dsl)
@@ -100,7 +100,7 @@ end
100
100
 
101
101
  def case_after(c)
102
102
  # implement each case after
103
- Dir.chdir("../")
103
+ Dir.chdir('../')
104
104
  FileUtils.rm_rf(OUTPUT_DSL_MODEL_TMP_DIR) if Dir.exists? OUTPUT_DSL_MODEL_TMP_DIR
105
105
  end
106
106
  end
@@ -1,13 +1,14 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/product_codes/dsl"
4
- require "dslable_dsl"
2
+ require 'spec_helper'
3
+ require 'generators/product_codes/dsl'
4
+ require 'dslable_dsl'
5
+ require 'dslable_field'
5
6
 
6
7
  describe Dslable::Generators::ProductCodes::Dsl do
7
8
 
8
9
  context :generate do
9
- OUTPUT_DSL_TMP_DIR = "generate_dsl"
10
- OUTPUT_DSL_CASE1 =<<-EOF
10
+ OUTPUT_DSL_TMP_DIR = 'generate_dsl'
11
+ OUTPUT_DSL_CASE1 = <<-EOF
11
12
  # encoding: utf-8
12
13
  require 'sample_gem_dsl_model'
13
14
 
@@ -22,7 +23,7 @@ module SampleGem
22
23
  end
23
24
  end
24
25
 
25
- # Array/Hash Define
26
+ # Array/Hash/Boolean Define
26
27
  [:field2, :field3, :field5, :field6].each do |f|
27
28
  define_method f do |value|
28
29
  eval "@sample_gem.#\{f.to_s} = #\{value}", binding
@@ -42,15 +43,15 @@ end
42
43
  cases = [
43
44
  {
44
45
  case_no: 1,
45
- case_title: "generate",
46
- gem_name: "sample_gem",
46
+ case_title: 'generate',
47
+ gem_name: 'sample_gem',
47
48
  fields: [:field1, :field2, :field3, :field4, :field5, :field6],
48
- fields_descs: ["field_desc1", "field_desc2", "field_desc3", "field_desc4", "field_desc5", "field_desc6"],
49
+ fields_descs: ['field_desc1', 'field_desc2', 'field_desc3', 'field_desc4', 'field_desc5', 'field_desc6'],
49
50
  args: [:args1, :args2, :args3, :args4, :args5, :args6],
50
51
  args_klass: [String, Array, Hash, String, Array, Hash],
51
52
  args_required: [true, true, true, false, false, false],
52
- args_default: ["default1", ["default1", "default2"], {default_key: "default_value"}, nil, nil, nil],
53
- expected_file: "./lib/sample_gem_dsl.rb",
53
+ args_default: ['default1', ['default1', 'default2'], { default_key: 'default_value' }, nil, nil, nil],
54
+ expected_file: './lib/sample_gem_dsl.rb',
54
55
  expected_contents: OUTPUT_DSL_CASE1
55
56
 
56
57
  },
@@ -69,7 +70,7 @@ end
69
70
  gen_dsl.generate
70
71
 
71
72
  # -- then --
72
- actual = File.open(c[:expected_file]) {|f|f.read}
73
+ actual = File.open(c[:expected_file]) { |f|f.read }
73
74
  expect(actual).to eq(c[:expected_contents])
74
75
  ensure
75
76
  case_after c
@@ -81,7 +82,7 @@ end
81
82
  # implement each case before
82
83
  Dir.mkdir(OUTPUT_DSL_TMP_DIR) unless Dir.exists? OUTPUT_DSL_TMP_DIR
83
84
  Dir.chdir(OUTPUT_DSL_TMP_DIR)
84
- Dir.mkdir "lib"
85
+ Dir.mkdir 'lib'
85
86
  end
86
87
 
87
88
  def setup_dsl(c, dsl)
@@ -101,7 +102,7 @@ end
101
102
 
102
103
  def case_after(c)
103
104
  # implement each case after
104
- Dir.chdir("../")
105
+ Dir.chdir('../')
105
106
  FileUtils.rm_rf(OUTPUT_DSL_TMP_DIR) if Dir.exists? OUTPUT_DSL_TMP_DIR
106
107
  end
107
108
  end
@@ -1,19 +1,19 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/rspec/spec_template"
4
- require "dslable_dsl"
2
+ require 'spec_helper'
3
+ require 'generators/rspec/spec_template'
4
+ require 'dslable_dsl'
5
5
 
6
6
  describe Dslable::Generators::RSpec::SpecTemplate do
7
7
 
8
8
  context :generate do
9
- OUTPUT_SPEC_TMP_DIR = "generate_spec_template"
9
+ OUTPUT_SPEC_TMP_DIR = 'generate_spec_template'
10
10
 
11
11
  cases = [
12
12
  {
13
13
  case_no: 1,
14
- case_title: "valid spec template",
15
- gem_name: "sample_gem",
16
- spec_dir_name: "spec"
14
+ case_title: 'valid spec template',
15
+ gem_name: 'sample_gem',
16
+ spec_dir_name: 'spec'
17
17
  },
18
18
  ]
19
19
 
@@ -45,7 +45,7 @@ describe Dslable::Generators::RSpec::SpecTemplate do
45
45
  end
46
46
 
47
47
  def case_after(c)
48
- Dir.chdir("../")
48
+ Dir.chdir('../')
49
49
  FileUtils.rm_rf(OUTPUT_SPEC_TMP_DIR) if Dir.exists? OUTPUT_SPEC_TMP_DIR
50
50
  end
51
51
  end
@@ -1,19 +1,19 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/rspec/specs"
4
- require "dslable_dsl"
2
+ require 'spec_helper'
3
+ require 'generators/rspec/specs'
4
+ require 'dslable_dsl'
5
5
 
6
6
  describe Dslable::Generators::RSpec::Specs do
7
7
 
8
8
  context :generate do
9
- OUTPUT_SPECS_TMP_DIR = "generate_specs_template"
9
+ OUTPUT_SPECS_TMP_DIR = 'generate_specs_template'
10
10
 
11
11
  cases = [
12
12
  {
13
13
  case_no: 1,
14
- case_title: "valid specs template",
15
- gem_name: "sample_gem",
16
- specs: ["spec/sample_gem_core_spec.rb"]
14
+ case_title: 'valid specs template',
15
+ gem_name: 'sample_gem',
16
+ specs: ['spec/sample_gem_core_spec.rb']
17
17
  },
18
18
  ]
19
19
 
@@ -47,7 +47,7 @@ describe Dslable::Generators::RSpec::Specs do
47
47
  end
48
48
 
49
49
  def case_after(c)
50
- Dir.chdir("../")
50
+ Dir.chdir('../')
51
51
  FileUtils.rm_rf(OUTPUT_SPECS_TMP_DIR) if Dir.exists? OUTPUT_SPECS_TMP_DIR
52
52
  end
53
53
  end
@@ -1,25 +1,25 @@
1
1
  # encoding: utf-8
2
- require "spec_helper"
3
- require "generators/settings/gemfile"
2
+ require 'spec_helper'
3
+ require 'generators/settings/gemfile'
4
4
 
5
5
  describe Dslable::Generators::Settings::Gemfile do
6
6
 
7
7
  context :generate do
8
- OUTPUT_GEMFILE_TMP_DIR = "generate_gemfile"
8
+ OUTPUT_GEMFILE_TMP_DIR = 'generate_gemfile'
9
9
 
10
10
  cases = [
11
11
  {
12
12
  case_no: 1,
13
- case_title: "generate",
14
- gem_name: "sample_gem",
15
- bin_name: "samplegem",
13
+ case_title: 'generate',
14
+ gem_name: 'sample_gem',
15
+ bin_name: 'samplegem',
16
16
  fields: [:field1],
17
- fields_descs: ["field_desc1"],
17
+ fields_descs: ['field_desc1'],
18
18
  args: [:args1],
19
19
  args_klass: [String],
20
20
  args_required: [true],
21
- args_default: ["default1"],
22
- expected_file: "./Gemfile",
21
+ args_default: ['default1'],
22
+ expected_file: './Gemfile',
23
23
  expected_contents: Dslable::Generators::Settings::Gemfile::GEMFILE_TEMPLATE
24
24
  },
25
25
  ]
@@ -37,7 +37,7 @@ describe Dslable::Generators::Settings::Gemfile do
37
37
  gen_gemfile.generate
38
38
 
39
39
  # -- then --
40
- actual = File.open(c[:expected_file]) {|f|f.read}
40
+ actual = File.open(c[:expected_file]) { |f|f.read }
41
41
  expect(actual).to eq(c[:expected_contents])
42
42
  ensure
43
43
  case_after c
@@ -69,7 +69,7 @@ describe Dslable::Generators::Settings::Gemfile do
69
69
 
70
70
  def case_after(c)
71
71
  # implement each case after
72
- Dir.chdir("../")
72
+ Dir.chdir('../')
73
73
  FileUtils.rm_rf(OUTPUT_GEMFILE_TMP_DIR) if Dir.exists? OUTPUT_GEMFILE_TMP_DIR
74
74
  end
75
75
  end
@@ -5,8 +5,8 @@ require 'generators/workflow'
5
5
  describe Dslable::Generators::Workflow do
6
6
 
7
7
  context :generate do
8
- OUTPUT_WORKFLOW_TMP_DIR = "workflow_tmp"
9
- TODOS_CASE1 =<<-EOS
8
+ OUTPUT_WORKFLOW_TMP_DIR = 'workflow_tmp'
9
+ TODOS_CASE1 = <<-EOS
10
10
  implement 'sample_gem_core.rb' your main logic. pass rspec all specs.
11
11
  implement bin 'bin/samplegem'.
12
12
  edit 'sample_gem.gemspec'.
@@ -21,21 +21,21 @@ gem install sample_gem.
21
21
  after release check.
22
22
  EOS
23
23
 
24
- DOINGS_CASE1 =<<-EOS
24
+ DOINGS_CASE1 = <<-EOS
25
25
  implement 'sample_gem_core_spec.rb'.
26
26
  EOS
27
27
 
28
28
  cases = [
29
29
  {
30
30
  case_no: 1,
31
- case_title: "generate",
32
- gem_name: "sample_gem",
33
- bin_name: "samplegem",
31
+ case_title: 'generate',
32
+ gem_name: 'sample_gem',
33
+ bin_name: 'samplegem',
34
34
  expected: Dslable::Generators::Workflow::TUDU_FILES,
35
35
  expected_contents: {
36
- :todos => TODOS_CASE1,
37
- :doings => DOINGS_CASE1,
38
- :dones => ""
36
+ todos: TODOS_CASE1,
37
+ doings: DOINGS_CASE1,
38
+ dones: ''
39
39
  }
40
40
  },
41
41
  ]
@@ -56,7 +56,7 @@ implement 'sample_gem_core_spec.rb'.
56
56
 
57
57
  # -- then --
58
58
  c[:expected].each do |key, file_definition|
59
- actual = File.open(file_definition[:file_name]) {|f|f.read}
59
+ actual = File.open(file_definition[:file_name]) { |f|f.read }
60
60
  expect(actual).to eq(c[:expected_contents][key])
61
61
  end
62
62
  ensure
@@ -72,7 +72,7 @@ implement 'sample_gem_core_spec.rb'.
72
72
 
73
73
  def case_after(c)
74
74
  # implement each case after
75
- Dir.chdir("../")
75
+ Dir.chdir('../')
76
76
  FileUtils.rm_rf(OUTPUT_WORKFLOW_TMP_DIR) if Dir.exists? OUTPUT_WORKFLOW_TMP_DIR
77
77
  end
78
78
  end