hexx 9.0.1 → 9.1.0

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.
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