pdd 0.20.5 → 0.20.6

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
  SHA256:
3
- metadata.gz: 469fac61bc8c662a5ab60e7edafacdde3c5ca80d07d58344aee7998ed419278c
4
- data.tar.gz: 5724768e66432f5fd4069c4400e93270fa821b14cd041b406e508c2508d3a73d
3
+ metadata.gz: 94bad35283e2d4e40df39ffa9a643c1352a4674cb500123fb0442af9c3af082d
4
+ data.tar.gz: a451b9e8a979d64fbcae9e5cb279cc6c25c87ba9d7d1618e740083444a37cc12
5
5
  SHA512:
6
- metadata.gz: 745ce4a855723ec9c4071668883e15baab1a39f2273b0c1a159a8f834782afd1ff8861c28556130f34e2c6ccc2accc21ffccb49542bef630c0e4e3f721f39224
7
- data.tar.gz: df6ce1341c94ac38b2cdbd7f01df568d19688d8eb5d9864a03b08a33ee424757d2f7d8c0cd56856abb9edb728faa53c07840c0282a7c775a6ce8ca80d8639fc9
6
+ metadata.gz: b71f4e3eafa987be5233a8f29ec25b8c72bbb6eebd36cf9f9b23b01b1c09767ea4cd395c9c6f369068d87a41bd638dc6a7e5588ebeb7b21f60d6fd5db9e0e043
7
+ data.tar.gz: 075700135e8e66e28c2db6cff9b613d76fdb464529ad164fae32f6c179e840197e2e946622c7ce87419422b3d4029b1c584d59f302a30581febf832b730fadc6
data/.gitignore CHANGED
@@ -5,3 +5,4 @@ Gemfile.lock
5
5
  .bundle/
6
6
  .DS_Store
7
7
  rdoc/
8
+ tmp/
data/.pdd CHANGED
@@ -1,11 +1,20 @@
1
1
  --source=.
2
2
  --verbose
3
+ --exclude .idea/**/*
3
4
  --exclude target/**/*
4
5
  --exclude coverage/**/*
5
- --exclude features/**/*
6
6
  --exclude README.md
7
+ --exclude features/cli.feature
8
+ --exclude features/parsing.feature
9
+ --exclude features/catches_broken_puzzles.feature
10
+ --exclude features/uses_config.feature
11
+ --exclude features/html_output.feature
12
+ --exclude features/avoiding_duplicates.feature
13
+ --exclude features/applies_rules.feature
14
+ --exclude features/unicode.feature
7
15
  --exclude lib/pdd/source.rb
8
16
  --exclude test/test_source.rb
17
+ --exclude test/test_source_todo.rb
9
18
  --exclude test/test_pdd.rb
10
19
  --exclude src/main/resources/images/**/*
11
20
  --rule min-words:20
@@ -1,9 +1,8 @@
1
1
  AllCops:
2
2
  Exclude:
3
- - 'bin/**/*'
4
3
  - 'assets/**/*'
5
4
  DisplayCopNames: true
6
- TargetRubyVersion: 2.2
5
+ TargetRubyVersion: 2.3
7
6
 
8
7
  Layout/EndOfLine:
9
8
  EnforcedStyle: lf
@@ -17,3 +16,8 @@ Style/MultilineBlockChain:
17
16
  Enabled: false
18
17
  Metrics/BlockLength:
19
18
  Max: 50
19
+ # @todo #123:30m Needs to enable this check and fix all issues.
20
+ # For now, this is out of the scope of this issue.
21
+ # This issue appeared after update TargetRubyVersion to 2.3
22
+ Style/FrozenStringLiteralComment:
23
+ Enabled: false
@@ -1,16 +1,16 @@
1
1
  assets:
2
- rubygems.yml: zerocracy/home#assets/rubygems.yml
3
- s3cfg: zerocracy/home#assets/s3cfg
2
+ rubygems.yml: yegor256/home#assets/rubygems.yml
3
+ s3cfg: yegor256/home#assets/s3cfg
4
4
  install: |
5
5
  export GEM_HOME=~/.ruby
6
6
  export GEM_PATH=$GEM_HOME:$GEM_PATH
7
- sudo gem install pdd
8
- sudo gem install xcop
7
+ sudo gem install pdd -v 0.20.5
8
+ sudo gem install xcop -v 0.6
9
+ bundle install
9
10
  release:
10
11
  script: |-
11
- env
12
- bundle install
13
- LC_ALL=US-ASCII rake
12
+ pdd -f /dev/null
13
+ LC_ALL=US-ASCII bundle exec rake
14
14
  rm -rf *.gem
15
15
  sed -i "s/1\.0\.snapshot/${tag}/g" lib/pdd/version.rb
16
16
  git add lib/pdd/version.rb
@@ -18,16 +18,15 @@ release:
18
18
  gem build pdd.gemspec
19
19
  chmod 0600 ../rubygems.yml
20
20
  gem push *.gem --config-file ../rubygems.yml
21
- sudo gem install pdd
22
21
  pdd --source=$(pwd) --verbose --file=pdd.xml -e=test/** -e=features/** -e=coverage/**/* -e=README.md
23
22
  s3cmd --no-progress put pdd.xml --config=../s3cfg s3://pdd.teamed.io/pdd.xml
24
23
  s3cmd --no-progress put assets/puzzles.xsd --acl-public --config=../s3cfg s3://pdd-xsd.teamed.io/${tag}.xsd
25
24
  s3cmd --no-progress put assets/puzzles.xsl --acl-public --config=../s3cfg s3://pdd-xsl.teamed.io/${tag}.xsl
26
- commanders:
27
- - yegor256
28
- architect:
29
- - yegor256
30
- - davvd
31
25
  merge:
32
- commanders: []
33
- deploy: {}
26
+ script: |-
27
+ pdd -f /dev/null
28
+ LC_ALL=US-ASCII bundle exec rake
29
+ deploy:
30
+ script: |-
31
+ echo 'Nothing to deploy'
32
+ exit -1
data/.simplecov CHANGED
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.2.2
3
+ - 2.3.0
4
4
  cache: bundler
5
5
  branches:
6
6
  only:
@@ -8,6 +8,6 @@ branches:
8
8
  install:
9
9
  - travis_retry bundle update
10
10
  script:
11
- - rake
11
+ - bundle exec rake
12
12
  after_success:
13
13
  - "bash <(curl -s https://codecov.io/bash)"
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,6 +1,6 @@
1
1
  (The MIT License)
2
2
 
3
- Copyright (c) 2014-2019 Yegor Bugayenko
3
+ Copyright (c) 2014-2020 Yegor Bugayenko
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the 'Software'), to deal
data/README.md CHANGED
@@ -2,32 +2,32 @@
2
2
 
3
3
  [![Donate via Zerocracy](https://www.0crat.com/contrib-badge/C3T46CUJJ.svg)](https://www.0crat.com/contrib/C3T46CUJJ)
4
4
 
5
- [![EO principles respected here](http://www.elegantobjects.org/badge.svg)](http://www.elegantobjects.org)
5
+ [![EO principles respected here](https://www.elegantobjects.org/badge.svg)](https://www.elegantobjects.org)
6
6
  [![Managed by Zerocracy](https://www.0crat.com/badge/C3T46CUJJ.svg)](https://www.0crat.com/p/C3T46CUJJ)
7
7
  [![DevOps By Rultor.com](http://www.rultor.com/b/yegor256/pdd)](http://www.rultor.com/p/yegor256/pdd)
8
- [![We recommend RubyMine](http://www.elegantobjects.org/rubymine.svg)](https://www.jetbrains.com/ruby/)
8
+ [![We recommend RubyMine](https://www.elegantobjects.org/rubymine.svg)](https://www.jetbrains.com/ruby/)
9
9
 
10
10
  [![Build Status](https://travis-ci.org/yegor256/pdd.svg)](https://travis-ci.org/yegor256/pdd)
11
11
  [![Build status](https://ci.appveyor.com/api/projects/status/b59sdhuu0gcku15b?svg=true)](https://ci.appveyor.com/project/yegor256/pdd)
12
12
  [![PDD status](http://www.0pdd.com/svg?name=yegor256/pdd)](http://www.0pdd.com/p?name=yegor256/pdd)
13
+ [![Test Coverage](https://img.shields.io/codecov/c/github/yegor256/pdd.svg)](https://codecov.io/github/yegor256/pdd?branch=master)
14
+ [![Hits-of-Code](https://hitsofcode.com/github/yegor256/pdd)](https://hitsofcode.com/view/github/yegor256/pdd)
15
+ [![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/yegor256/pdd/blob/master/LICENSE.txt)
13
16
 
14
17
  [![Gem Version](https://badge.fury.io/rb/pdd.svg)](http://badge.fury.io/rb/pdd)
15
- [![Dependency Status](https://gemnasium.com/yegor256/pdd.svg)](https://gemnasium.com/yegor256/pdd)
16
18
  [![Maintainability](https://api.codeclimate.com/v1/badges/c8e46256fdd8ddc817e5/maintainability)](https://codeclimate.com/github/yegor256/pdd/maintainability)
17
- [![Test Coverage](https://img.shields.io/codecov/c/github/yegor256/pdd.svg)](https://codecov.io/github/yegor256/pdd?branch=master)
18
19
  [![Yard Docs](http://img.shields.io/badge/yard-docs-blue.svg)](http://rubydoc.info/github/yegor256/pdd/master/frames)
19
20
 
20
- ## What This is for?
21
-
22
21
  Read this article about
23
- [Puzzle Driven Development](http://www.yegor256.com/2009/03/04/pdd.html).
22
+ [_Puzzle Driven Development_](http://www.yegor256.com/2009/03/04/pdd.html).
24
23
  Check also patent application [US 12/840,306](http://www.google.com/patents/US20120023476)
25
24
 
26
25
  Also, check [0pdd.com](http://www.0pdd.com): a hosted service,
27
- where this command line tool works for you. Read this first:
28
- [PDD in Action](http://www.yegor256.com/2017/04/05/pdd-in-action.html).
26
+ where this command line tool works for you.
29
27
 
30
- ## How to Install?
28
+ Read
29
+ [_PDD in Action_](http://www.yegor256.com/2017/04/05/pdd-in-action.html)
30
+ and watch [this webinar](https://www.youtube.com/watch?v=nsYGC2aUwfQ).
31
31
 
32
32
  Install it first:
33
33
 
@@ -35,8 +35,6 @@ Install it first:
35
35
  $ gem install pdd
36
36
  ```
37
37
 
38
- ## How to Run?
39
-
40
38
  Run it locally and read its output:
41
39
 
42
40
  ```bash
@@ -181,7 +179,7 @@ The most interesting parts of each puzzle are:
181
179
 
182
180
  * `lines` is where the puzzle is found, inside the file.
183
181
 
184
- # How to contribute
182
+ ## How to contribute
185
183
 
186
184
  Read [these guidelines](https://www.yegor256.com/2014/04/15/github-guidelines.html).
187
185
  Make sure you build is green before you contribute
@@ -190,7 +188,7 @@ your pull request. You will need to have [Ruby](https://www.ruby-lang.org/en/) 2
190
188
 
191
189
  ```
192
190
  $ bundle update
193
- $ rake
191
+ $ bundle exec rake
194
192
  ```
195
193
 
196
194
  If it's clean and you don't see any error messages, submit your pull request.
@@ -200,27 +198,3 @@ This is how you run the tool locally to test how it works:
200
198
  ```bash
201
199
  $ ./bin/pdd --help
202
200
  ```
203
-
204
- ## License
205
-
206
- (The MIT License)
207
-
208
- Copyright (c) 2016-2018 Yegor Bugayenko
209
-
210
- Permission is hereby granted, free of charge, to any person obtaining a copy
211
- of this software and associated documentation files (the 'Software'), to deal
212
- in the Software without restriction, including without limitation the rights
213
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
214
- copies of the Software, and to permit persons to whom the Software is
215
- furnished to do so, subject to the following conditions:
216
-
217
- The above copyright notice and this permission notice shall be included in all
218
- copies or substantial portions of the Software.
219
-
220
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
221
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
222
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
223
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
224
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
225
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
226
- SOFTWARE.
data/Rakefile CHANGED
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -2,7 +2,7 @@
2
2
  <!--
3
3
  (The MIT License)
4
4
 
5
- Copyright (c) 2014-2019 Yegor Bugayenko
5
+ Copyright (c) 2014-2020 Yegor Bugayenko
6
6
 
7
7
  Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  of this software and associated documentation files (the 'Software'), to deal
@@ -2,7 +2,7 @@
2
2
  <!--
3
3
  (The MIT License)
4
4
 
5
- Copyright (c) 2014-2019 Yegor Bugayenko
5
+ Copyright (c) 2014-2020 Yegor Bugayenko
6
6
 
7
7
  Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  of this software and associated documentation files (the 'Software'), to deal
data/bin/pdd CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
- # Copyright (c) 2014-2019 Yegor Bugayenko
2
+ # Copyright (c) 2014-2020 Yegor Bugayenko
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining a copy
5
5
  # of this software and associated documentation files (the 'Software'), to deal
@@ -53,7 +53,7 @@ begin
53
53
  o.string '-s', '--source', 'Source directory to parse ("." by default)'
54
54
  o.string '-f', '--file', 'File to save XML into'
55
55
  o.array '-e', '--exclude', 'Glob pattern to exclude, e.g. "**/*.jpg"',
56
- default: []
56
+ default: []
57
57
  o.string '-t', '--format', 'Format of the report (xml|html)'
58
58
  o.array(
59
59
  '-r', '--rule', 'Rule to apply (can be used many times)',
@@ -0,0 +1,19 @@
1
+ Feature: Rake Task
2
+ Scenario: For now we failed if run rake task
3
+ Given It is Unix
4
+ And a file named "Rakefile" with:
5
+ """
6
+ require 'pdd/rake_task'
7
+ PDD::RakeTask.new
8
+ """
9
+ When I run the following commands with `bash`:
10
+ """bash
11
+ rake pdd
12
+ """
13
+ Then the exit status should be 1
14
+ And the stderr should contain:
15
+ """
16
+ NOT IMPLEMENTED
17
+ """
18
+ When I remove a file named "Rakefile" with full force
19
+ Then a file named "Rakefile" does not exist
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -111,6 +111,12 @@ When(/^I run bash with$/) do |text|
111
111
  @exitstatus = $CHILD_STATUS.exitstatus
112
112
  end
113
113
 
114
+ When(/^I run bash with "([^"]*)"$/) do |text|
115
+ FileUtils.copy_entry(@cwd, File.join(@dir, 'pdd'))
116
+ @stdout = `#{text}`
117
+ @exitstatus = $CHILD_STATUS.exitstatus
118
+ end
119
+
114
120
  Given(/^It is Unix$/) do
115
121
  pending if Gem.win_platform?
116
122
  end
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -20,3 +20,4 @@
20
20
 
21
21
  require 'simplecov'
22
22
  require_relative '../../lib/pdd'
23
+ require 'aruba/cucumber'
data/lib/pdd.rb CHANGED
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -30,7 +30,7 @@ require_relative 'pdd/rule/roles'
30
30
 
31
31
  # PDD main module.
32
32
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
33
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
33
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
34
34
  # License:: MIT
35
35
  module PDD
36
36
  # If it breaks.
@@ -87,11 +87,9 @@ module PDD
87
87
  PDD.log.info "Reading #{dir}"
88
88
  require_relative 'pdd/sources'
89
89
  sources = Sources.new(dir)
90
- unless @opts[:exclude].nil?
91
- @opts[:exclude].each do |p|
92
- sources = sources.exclude(p)
93
- PDD.log.info "Excluding #{p}"
94
- end
90
+ @opts[:exclude]&.each do |p|
91
+ sources = sources.exclude(p)
92
+ PDD.log.info "Excluding #{p}"
95
93
  end
96
94
  sanitize(
97
95
  rules(
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -0,0 +1,30 @@
1
+ require 'rake'
2
+ require 'rake/tasklib'
3
+
4
+ # PDD Rake task
5
+ module PDD
6
+ # Rake task
7
+ class RakeTask < Rake::TaskLib
8
+ attr_accessor :name
9
+ def initialize(*args, &task_block)
10
+ # @todo #125:30m Needs to have more parameters to run this task.
11
+ # For now, we just have a single parameter - the name.
12
+ # Needs more parameters like the xcop rake task has.
13
+ @name = args.shift || :pdd
14
+ desc 'Run PDD' unless ::Rake.application.last_description
15
+ task(name, *args) do |_, task_args|
16
+ RakeFileUtils.send(:verbose, true) do
17
+ yield(*[self, task_args].slice(0, task_block.arity)) if block_given?
18
+ run
19
+ end
20
+ end
21
+ end
22
+
23
+ def run
24
+ # @todo #125:30m need to implement this method.
25
+ # For now, it's just a task,
26
+ # that accepts one parameter and throws a system error.
27
+ abort('NOT IMPLEMENTED')
28
+ end
29
+ end
30
+ end
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -20,8 +20,8 @@
20
20
 
21
21
  # PDD main module.
22
22
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
23
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
23
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
24
24
  # License:: MIT
25
25
  module PDD
26
- VERSION = '0.20.5'.freeze
26
+ VERSION = '0.20.6'.freeze
27
27
  end
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -29,8 +29,8 @@ Gem::Specification.new do |s|
29
29
  if s.respond_to? :required_rubygems_version=
30
30
  s.required_rubygems_version = Gem::Requirement.new('>= 0')
31
31
  end
32
- s.rubygems_version = '2.2'
33
- s.required_ruby_version = '>= 2.2'
32
+ s.rubygems_version = '2.3'
33
+ s.required_ruby_version = '>= 2.3'
34
34
  s.name = 'pdd'
35
35
  s.version = PDD::VERSION
36
36
  s.license = 'MIT'
@@ -44,10 +44,11 @@ Gem::Specification.new do |s|
44
44
  s.test_files = s.files.grep(%r{^(test|spec|features)/})
45
45
  s.rdoc_options = ['--charset=UTF-8']
46
46
  s.extra_rdoc_files = ['README.md', 'LICENSE.txt']
47
- s.add_runtime_dependency 'nokogiri', '1.10.3'
48
- s.add_runtime_dependency 'rainbow', '~>3.0'
49
- s.add_runtime_dependency 'slop', '4.6.1'
50
- s.add_development_dependency 'codecov', '0.1.10'
47
+ s.add_runtime_dependency 'nokogiri', '~> 1.10'
48
+ s.add_runtime_dependency 'rainbow', '~> 3.0'
49
+ s.add_runtime_dependency 'slop', '~> 4.6'
50
+ s.add_development_dependency 'aruba', '~> 0.14.1'
51
+ s.add_development_dependency 'codecov', '0.2.12'
51
52
  s.add_development_dependency 'cucumber', '3.1.0'
52
53
  s.add_development_dependency 'minitest', '5.5.0'
53
54
  s.add_development_dependency 'rake', '12.0.0'
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -24,7 +24,7 @@ require_relative '../lib/pdd/rule/duplicates'
24
24
 
25
25
  # PDD::Rule::MaxDuplicates class test.
26
26
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
27
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
27
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
28
28
  # License:: MIT
29
29
  class TestMaxDuplicates < Minitest::Test
30
30
  def test_max_duplicates
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -24,7 +24,7 @@ require_relative '../lib/pdd/rule/estimates'
24
24
 
25
25
  # PDD::Rule::Estimate module tests.
26
26
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
27
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
27
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
28
28
  # License:: MIT
29
29
  class TestEstimates < Minitest::Test
30
30
  def test_min
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -26,7 +26,7 @@ require_relative '../lib/pdd'
26
26
 
27
27
  # PDD main module test.
28
28
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
29
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
29
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
30
30
  # License:: MIT
31
31
  class TestPDD < Minitest::Test
32
32
  def test_basic
@@ -0,0 +1,15 @@
1
+ require 'minitest/autorun'
2
+ require 'tmpdir'
3
+ require 'rake'
4
+ require_relative '../lib/pdd/rake_task'
5
+
6
+ # Test for RakeTask
7
+ class TestRakeTask < Minitest::Test
8
+ def test_base
9
+ PDD::RakeTask.new(:pdd1)
10
+ error = assert_raises SystemExit do
11
+ Rake::Task['pdd1'].invoke
12
+ end
13
+ assert_equal('NOT IMPLEMENTED', error.message)
14
+ end
15
+ end
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -24,7 +24,7 @@ require_relative '../lib/pdd/rule/roles'
24
24
 
25
25
  # PDD::Rule::Role module tests.
26
26
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
27
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
27
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
28
28
  # License:: MIT
29
29
  class TestRoles < Minitest::Test
30
30
  def test_incorrect_role
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -25,7 +25,7 @@ require_relative '../lib/pdd/sources'
25
25
 
26
26
  # Source test.
27
27
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
28
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
28
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
29
29
  # License:: MIT
30
30
  class TestSource < Minitest::Test
31
31
  def test_parsing
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -26,7 +26,7 @@ require_relative '../lib/pdd/sources'
26
26
 
27
27
  # Sources test.
28
28
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
29
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
29
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
30
30
  # License:: MIT
31
31
  class TestSources < Minitest::Test
32
32
  def test_iterator
@@ -1,4 +1,4 @@
1
- # Copyright (c) 2014-2019 Yegor Bugayenko
1
+ # Copyright (c) 2014-2020 Yegor Bugayenko
2
2
  #
3
3
  # Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  # of this software and associated documentation files (the 'Software'), to deal
@@ -24,7 +24,7 @@ require_relative '../lib/pdd/rule/text'
24
24
 
25
25
  # PDD::Rule::Text module tests.
26
26
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
27
- # Copyright:: Copyright (c) 2014-2019 Yegor Bugayenko
27
+ # Copyright:: Copyright (c) 2014-2020 Yegor Bugayenko
28
28
  # License:: MIT
29
29
  class TestText < Minitest::Test
30
30
  def test_min_words
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pdd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.5
4
+ version: 0.20.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-15 00:00:00.000000000 Z
11
+ date: 2020-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '='
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.10.3
19
+ version: '1.10'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '='
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.10.3
26
+ version: '1.10'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rainbow
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,30 +42,44 @@ dependencies:
42
42
  name: slop
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '='
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 4.6.1
47
+ version: '4.6'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '='
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '4.6'
55
+ - !ruby/object:Gem::Dependency
56
+ name: aruba
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 0.14.1
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: 4.6.1
68
+ version: 0.14.1
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: codecov
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - '='
60
74
  - !ruby/object:Gem::Version
61
- version: 0.1.10
75
+ version: 0.2.12
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - '='
67
81
  - !ruby/object:Gem::Version
68
- version: 0.1.10
82
+ version: 0.2.12
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: cucumber
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -213,12 +227,14 @@ files:
213
227
  - features/gem_package.feature
214
228
  - features/html_output.feature
215
229
  - features/parsing.feature
230
+ - features/rake.feature
216
231
  - features/step_definitions/steps.rb
217
232
  - features/support/env.rb
218
233
  - features/unicode.feature
219
234
  - features/uses_config.feature
220
235
  - lib/pdd.rb
221
236
  - lib/pdd/puzzle.rb
237
+ - lib/pdd/rake_task.rb
222
238
  - lib/pdd/rule/duplicates.rb
223
239
  - lib/pdd/rule/estimates.rb
224
240
  - lib/pdd/rule/roles.rb
@@ -231,6 +247,7 @@ files:
231
247
  - test/test_duplicates.rb
232
248
  - test/test_estimates.rb
233
249
  - test/test_pdd.rb
250
+ - test/test_rake_task.rb
234
251
  - test/test_roles.rb
235
252
  - test/test_source.rb
236
253
  - test/test_source_todo.rb
@@ -254,7 +271,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
254
271
  requirements:
255
272
  - - ">="
256
273
  - !ruby/object:Gem::Version
257
- version: '2.2'
274
+ version: '2.3'
258
275
  required_rubygems_version: !ruby/object:Gem::Requirement
259
276
  requirements:
260
277
  - - ">="
@@ -273,6 +290,7 @@ test_files:
273
290
  - features/gem_package.feature
274
291
  - features/html_output.feature
275
292
  - features/parsing.feature
293
+ - features/rake.feature
276
294
  - features/step_definitions/steps.rb
277
295
  - features/support/env.rb
278
296
  - features/unicode.feature
@@ -281,6 +299,7 @@ test_files:
281
299
  - test/test_duplicates.rb
282
300
  - test/test_estimates.rb
283
301
  - test/test_pdd.rb
302
+ - test/test_rake_task.rb
284
303
  - test/test_roles.rb
285
304
  - test/test_source.rb
286
305
  - test/test_source_todo.rb