hexx 9.0.1 → 9.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0b2a8c7ec378b803a7e369f0be27267b7d934960
4
- data.tar.gz: 64f12ed9e058ce91a4294d577d5fc10d93cf609c
3
+ metadata.gz: 7c7b50fc951312fa2954b7e7ffb8e630884ddb31
4
+ data.tar.gz: 8fe1db5a6d98e34c99e8030a6a15a5b4cc1c18b5
5
5
  SHA512:
6
- metadata.gz: 64a8127268f645a99697c8269eeddec309f45287bc86ffa778d12816193c26dec37e1534b9e0a4511e14706170febe2aa8a37a98f24af9896078dd575e209e38
7
- data.tar.gz: 1d72d13ac59cdbc054af7fe27654a4a6575d5e0380008db38946c1afe413324b62fe904623a8cbd899992a1d57417a6eb40e394fae81c7f74bf3abc4fda16031
6
+ metadata.gz: c4c9686b1070da69bb053ab2f3c64f9744f59288da8ae3f2ddddbb97fa5a69c36d725068b790f674551dc3e72b36917c3fcf9cc7f89c2e45c9ebf5e3b921c441
7
+ data.tar.gz: be68aa6a1241845b453cee8ef1aa14a6058be411293010d21913f514d0b002542767f4e13c87b7a90b5bc605542a1036b48b9fe9d9e43368798987b302194384
@@ -3,8 +3,7 @@ language: ruby
3
3
  bundler_args: --without metrics
4
4
  script: rake test:coverage:run
5
5
  rvm:
6
- - '2.0'
6
+ - '2.1'
7
7
  - ruby-head
8
- - rbx-2 --2.0
9
- - jruby-head-20mode
8
+ - rbx-2 --2.1
10
9
  - jruby-head-21mode
data/bin/hexx CHANGED
@@ -1,18 +1,44 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # Loads the development dependencies
4
+ require "hexx-dependencies"
4
5
  require "hexx-validators"
6
+ require "policy/cli"
7
+ require "service_objects/cli"
5
8
 
6
- # Command line runner
9
+ # Command line runne # class CLIr
7
10
  class CLI < Thor
8
11
 
12
+ register(
13
+ Hexx::Dependencies::CLI,
14
+ "dependency",
15
+ "dependency[ NAME][ -g gemname][ -i Injection]",
16
+ "Scaffolds a custom dependency. Run `hexx dependency -h` for help."
17
+ )
18
+
9
19
  register(
10
20
  Hexx::Validators::Generator,
11
21
  "validator",
12
22
  "validator NAME[ -e error[ error]][ -o option[ option]]",
13
23
  "Scaffolds a custom validator. Run `hexx validator -h` for help."
14
24
  )
15
- end
25
+
26
+ register(
27
+ Policy::CLI,
28
+ "policy",
29
+ "policy NAME[ -a attribute[ attribute]][ -n namespace][ -l en ru]",
30
+ "Scaffolds a policy object. Run `hexx policy -h` for help."
31
+ )
32
+
33
+ register(
34
+ ServiceObjects::CLI,
35
+ "service",
36
+ "service NAME[ -d dependency][ -p param][ -n notification]" \
37
+ "[ -f folder][ -l ua]",
38
+ "Scaffolds a service object. Run `hexx service -h` for help."
39
+ )
40
+
41
+ end # class CLI
16
42
 
17
43
  # Starts cli with arguments taken from a command line
18
44
  CLI.start ARGV
@@ -31,9 +31,7 @@ Style/ClassAndModuleChildren:
31
31
  - '**/*_spec.rb'
32
32
 
33
33
  Style/Documentation:
34
- Exclude:
35
- - '**/version.rb'
36
- - '**/*_spec.rb'
34
+ Enabled: false
37
35
 
38
36
  Style/EmptyLinesAroundBlockBody:
39
37
  Enabled: false
@@ -21,6 +21,9 @@ Gem::Specification.new do |gem|
21
21
 
22
22
  gem.required_ruby_version = "~> 2.0"
23
23
  gem.add_runtime_dependency "hexx-validators", "~> 0.0", ">= 0.0.2"
24
+ gem.add_runtime_dependency "hexx-dependencies", "~> 0.0"
25
+ gem.add_runtime_dependency "policy", "~> 1.2"
26
+ gem.add_runtime_dependency "service_objects", "~> 0.1"
24
27
  gem.add_development_dependency "hexx-rspec", "~> 0.3"
25
28
 
26
29
  end
@@ -4,6 +4,6 @@ module Hexx
4
4
 
5
5
  # The semantic version of the module.
6
6
  # @see http://semver.org/ Semantic versioning 2.0
7
- VERSION = "9.0.1".freeze
7
+ VERSION = "9.1.0".freeze
8
8
 
9
9
  end # module Hexx
@@ -1,34 +1,67 @@
1
1
  # encoding: utf-8
2
+ require "hexx-dependencies"
2
3
  require "hexx-validators"
4
+ require "policy/cli"
5
+ require "service_objects/cli"
3
6
 
4
7
  describe "$ hexx", :sandbox do
5
8
 
6
- shared_examples "specific scaffolder" do
7
- # subject command, its arguments and generator should be defined in context
9
+ shared_examples "running scaffolder" do |generator|
8
10
 
9
- let!(:expected_output) do
11
+ let!(:expected) do
12
+ prepare_sandbox
10
13
  capture_stdout { try_in_sandbox { generator.start(arguments) } }
11
14
  end
12
15
 
13
- let!(:actual_output) do
16
+ let!(:actual) do
14
17
  prepare_sandbox
15
18
  try_in_sandbox { return `#{ [:hexx, subject, arguments].join(" ") }` }
16
19
  end
17
20
 
18
21
  it "[starts the generator]" do
19
- expect(actual_output).to eq expected_output
22
+ expect(actual).to eq expected
20
23
  end
21
- end
24
+
25
+ end # shared_examples
22
26
 
23
27
  context "validator" do
24
28
 
25
29
  subject { :validator }
26
30
 
27
- it_behaves_like "specific scaffolder" do
31
+ it_behaves_like "running scaffolder", Hexx::Validators::Generator do
28
32
  let(:arguments) { %w(in_future -e not_in_future -o allow_nil) }
29
- let(:generator) { Hexx::Validators::Generator }
30
33
  end
31
34
 
32
35
  end # validator
33
36
 
37
+ context "policy" do
38
+
39
+ subject { :policy }
40
+
41
+ it_behaves_like "running scaffolder", Policy::CLI do
42
+ let(:arguments) { %w(consistency -a debet credit -l en fr) }
43
+ end
44
+
45
+ end # policy
46
+
47
+ context "dependency" do
48
+
49
+ subject { :dependency }
50
+
51
+ it_behaves_like "running scaffolder", Hexx::Dependencies::CLI do
52
+ let(:arguments) { %w(user_model -g users -i user) }
53
+ end
54
+
55
+ end # dependency
56
+
57
+ context "service" do
58
+
59
+ subject { :service }
60
+
61
+ it_behaves_like "running scaffolder", ServiceObjects::CLI do
62
+ let(:arguments) { %w(get_item -p name -n found:item -l ua) }
63
+ end
64
+
65
+ end # service
66
+
34
67
  end # describe $ hexx
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hexx
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.0.1
4
+ version: 9.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kozin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-16 00:00:00.000000000 Z
11
+ date: 2015-03-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hexx-validators
@@ -30,6 +30,48 @@ dependencies:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 0.0.2
33
+ - !ruby/object:Gem::Dependency
34
+ name: hexx-dependencies
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '0.0'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: policy
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.2'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.2'
61
+ - !ruby/object:Gem::Dependency
62
+ name: service_objects
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.1'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0.1'
33
75
  - !ruby/object:Gem::Dependency
34
76
  name: hexx-rspec
35
77
  requirement: !ruby/object:Gem::Requirement