carrasco 0.1.3 → 0.1.4

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: 49782a8d9086a515545ad1b31f3a8b6bd288fdc3
4
- data.tar.gz: 72c3cefa7cb6f2757f1fdd41a9a45a7c69d4ce46
3
+ metadata.gz: 7dd8ab3b0403998b8a687d65456c0fb2b71db3c1
4
+ data.tar.gz: c673f154eddb65b81aa1e34c96be10ecc582b248
5
5
  SHA512:
6
- metadata.gz: a62c45d6b839ddbc0a24305637a8719a08e58ed430a66d29dab7e10ec0cfc0b85c176cc93b8a8a2717bec43a82a373cc9211f2df287161169e2e36288678f381
7
- data.tar.gz: 060410e0a1e75d5a01104ee6f87eb2f21a92960f7ffd2a5c992186aaabbb2191131ca24a4784893589ccbbf7c1daaf424812d6f8244225607f2231e5543fa346
6
+ metadata.gz: 57adb5427db68ea32207a985fef0b913d034c7362be70b0614a4ee052e16cf47a500323c3c15548d5f5729f51e3b76413d1c14781b592e476bcb86e263dc3ae7
7
+ data.tar.gz: 3b2941ce20dd9894ff0857da9e75d85acbebffa246b6507c896a9eb90c569607e011ff65a24673fc3f4143550f4e072cbecdd79e5936d812fe95ca62a8f3a36c
data/.carrasco.yml CHANGED
@@ -10,6 +10,10 @@ commands:
10
10
  description: execute php tests
11
11
  command: ./bin/vendor/phpunit --configuration=tests/phpunit.xml
12
12
 
13
+ ls:
14
+ description: List tmp file
15
+ command: ls /tmp/foo/foo
16
+
13
17
  # to be implemented
14
18
  groups:
15
19
  qa:
data/.scrutinizer.yml ADDED
@@ -0,0 +1,16 @@
1
+ checks:
2
+ ruby:
3
+ code_rating: true
4
+ duplicate_code: true
5
+
6
+ build:
7
+ tests:
8
+ override:
9
+ -
10
+ command: 'bundle exec rake test:scrutinizer'
11
+ environment:
12
+ 'SCRUTINIZER_CC_FILE': 'my-coverage'
13
+ ruby: '2.2.0'
14
+ coverage:
15
+ file: 'my-coverage'
16
+ format: 'rb-cc'
data/.travis.yml CHANGED
@@ -1,4 +1,11 @@
1
1
  language: ruby
2
- rvm:
3
- - 2.2.1
2
+
4
3
  before_install: gem install bundler -v 1.10.6
4
+
5
+ rvm:
6
+ - 1.9
7
+ - 2.0
8
+ - 2.1
9
+ - 2.2
10
+
11
+ sudo: false
data/README.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  Heartless and easy script execution
4
4
 
5
+ [![Build Status](https://travis-ci.org/mjacobus/carrasco.svg)](https://travis-ci.org/mjacobus/carrasco)
6
+ [![Code Coverage](https://scrutinizer-ci.com/g/mjacobus/carrasco/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/mjacobus/carrasco/?branch=master)
7
+ [![Code Climate](https://codeclimate.com/github/mjacobus/carrasco/badges/gpa.svg)](https://codeclimate.com/github/mjacobus/carrasco)
8
+ [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/mjacobus/carrasco/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/mjacobus/carrasco/?branch=master)
9
+ [![Dependency Status](https://gemnasium.com/mjacobus/carrasco.svg)](https://gemnasium.com/mjacobus/carrasco)
10
+ [![Gem Version](https://badge.fury.io/rb/carrasco.svg)](https://badge.fury.io/rb/carrasco)
11
+
5
12
  ## Installation
6
13
 
7
14
  Add this line to your application's Gemfile:
@@ -28,15 +35,17 @@ Given you have a config file like the following in the root of your project:
28
35
  commands:
29
36
 
30
37
  test:
31
- help: test
32
38
  description: execute ruby tests
33
39
  command: rake test
34
40
 
35
41
  phpunit:
36
- help: phpunit
37
42
  description: execute php tests
38
43
  command: ./bin/vendor/phpunit --configuration=tests/phpunit.xml
39
44
 
45
+ clear_cache:
46
+ description: Clears the application cache
47
+ command: rm -rf ./app/cache
48
+
40
49
  # to be implemented
41
50
  groups:
42
51
  qa:
data/Rakefile CHANGED
@@ -7,4 +7,21 @@ Rake::TestTask.new(:test) do |t|
7
7
  t.test_files = FileList['test/**/*_test.rb']
8
8
  end
9
9
 
10
- task :default => :test
10
+ namespace :test do
11
+ task :coveralls do
12
+ ENV["COVERALLS"] = "true"
13
+ Rake::Task["test:coverage"].invoke
14
+ end
15
+
16
+ task :coverage do
17
+ ENV["COVERAGE"] = "true"
18
+ Rake::Task["test"].invoke
19
+ end
20
+
21
+ task :scrutinizer do
22
+ ENV["SCRUTINIZER"] = "true"
23
+ Rake::Task["test"].invoke
24
+ end
25
+ end
26
+
27
+ task default: :test
data/carrasco.gemspec CHANGED
@@ -32,4 +32,9 @@ Gem::Specification.new do |spec|
32
32
  spec.add_development_dependency "bundler", "~> 1.10"
33
33
  spec.add_development_dependency "rake", "~> 10.0"
34
34
  spec.add_development_dependency "minitest"
35
+ spec.add_development_dependency "capybara"
36
+ spec.add_development_dependency "coveralls"
37
+ spec.add_development_dependency "simplecov"
38
+ spec.add_development_dependency "scrutinizer-ocular"
39
+ spec.add_development_dependency "mocha"
35
40
  end
@@ -0,0 +1,15 @@
1
+ require "thor/core_ext/hash_with_indifferent_access"
2
+
3
+ module Carrasco
4
+ class Command
5
+ attr_reader :command_name, :command, :description, :help
6
+
7
+ def initialize(command_name, options = {})
8
+ options = Thor::CoreExt::HashWithIndifferentAccess.new(options)
9
+ @command_name = command_name
10
+ @command = options[:command]
11
+ @help = options[:help] || command_name
12
+ @description = options[:description] || "description not given"
13
+ end
14
+ end
15
+ end
@@ -6,19 +6,20 @@ module Carrasco
6
6
  klass = Class.new(Thor)
7
7
 
8
8
  config['commands'].each do |method, options|
9
- help = options.fetch('help')
10
- description = options.fetch('description')
11
- command = options.fetch('command')
12
-
13
- klass.class_eval do
14
- desc help, description
15
- define_method (method) do
16
- system(command)
17
- end
18
- end
9
+ command = Command.new(method, options)
10
+ inject_command_into_class(command, klass)
19
11
  end
20
12
 
21
13
  klass
22
14
  end
15
+
16
+ def inject_command_into_class(command, klass)
17
+ klass.desc(command.help, command.description)
18
+ klass.class_eval do
19
+ define_method(command.command_name) do
20
+ system(command.command)
21
+ end
22
+ end
23
+ end
23
24
  end
24
25
  end
@@ -1,3 +1,3 @@
1
1
  module Carrasco
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
data/lib/carrasco.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require "carrasco/version"
2
+ require "carrasco/command"
2
3
  require "carrasco/command_builder"
3
4
 
4
5
  module Carrasco
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carrasco
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcelo Jacobus
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-11-28 00:00:00.000000000 Z
11
+ date: 2015-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -66,6 +66,76 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: capybara
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: coveralls
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: scrutinizer-ocular
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: mocha
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
69
139
  description: Command executor
70
140
  email:
71
141
  - marcelo.jacobus@gmail.com
@@ -76,6 +146,7 @@ extra_rdoc_files: []
76
146
  files:
77
147
  - ".carrasco.yml"
78
148
  - ".gitignore"
149
+ - ".scrutinizer.yml"
79
150
  - ".travis.yml"
80
151
  - CODE_OF_CONDUCT.md
81
152
  - Gemfile
@@ -87,6 +158,7 @@ files:
87
158
  - carrasco.gemspec
88
159
  - exe/carrasco
89
160
  - lib/carrasco.rb
161
+ - lib/carrasco/command.rb
90
162
  - lib/carrasco/command_builder.rb
91
163
  - lib/carrasco/version.rb
92
164
  homepage: https://github.com/mjacobus/carrasco
@@ -110,8 +182,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
182
  version: '0'
111
183
  requirements: []
112
184
  rubyforge_project:
113
- rubygems_version: 2.4.8
185
+ rubygems_version: 2.4.6
114
186
  signing_key:
115
187
  specification_version: 4
116
188
  summary: Command executor
117
189
  test_files: []
190
+ has_rdoc: