turbo_test_ruby_refinements 0.1.0 → 0.1.1

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: d74bbb1481edf355fc27a84fc71efedbb2cc03d0e322c6fb11f5d5bc63d2eaa7
4
- data.tar.gz: 1420039e93cb952d83a0068a75bd8c31067a9b6bfffe7ff1ef9862e8ad785a86
3
+ metadata.gz: 74091d4cb67194293f5b9d0a6419b457f653df3e34cd38993bfa146f54002ce9
4
+ data.tar.gz: b1279671b0c53142b59533d71f7345b3a793f9766ac3f27c5538a2d9960d7dd4
5
5
  SHA512:
6
- metadata.gz: f48b56fa321870d810107d792fd32429601265a7bd2648e5d9cb888ed188b334d329021b7dc3bf84faaced0c25fe3a703d7127921a7da8b51d89e0aec41c668b
7
- data.tar.gz: 87541e12ecda78c83f0dd393e46cea72828d4de75db25b5abe2626a073c5f9bf62fc5c3fea6c412ebc4aa3fe6792b361a9e648e2b856c54eb2436858b28ca52d
6
+ metadata.gz: 87f1f616214029b5e3c0ece0e14ca824c46f9c7bd48c34d6e23ea977e875b8ff8fe02377e3fce074b170d301dd91055df5cabe5a55020c3e357aeba7d961140c
7
+ data.tar.gz: 865219445f1d142bc832e28b7758ae69b7fcdf606989d6b06084bfe67662d5731ae89772bafd98464fa0dc85597fe64d7d296813367d7246c719f2e7e0e622c3
@@ -21,10 +21,22 @@ jobs:
21
21
  ruby-version: ${{ matrix.ruby }}
22
22
 
23
23
  - name: Install dependencies
24
+ env:
25
+ BUNDLE_GEMFILE: GemfileCI
24
26
  run: |
25
27
  bundle config path vendor/bundle
26
28
  bundle install --binstubs --jobs 4 --retry 3
27
29
 
28
30
  - name: Run tests
31
+ env:
32
+ BUNDLE_GEMFILE: GemfileCI
29
33
  run: |
30
34
  bundle exec rake
35
+
36
+ - name: Coveralls
37
+ if: ${{ matrix.ruby == '2.7' }}
38
+ env:
39
+ BUNDLE_GEMFILE: GemfileCI
40
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
41
+ run: |
42
+ bundle exec rake coveralls:push
data/Gemfile CHANGED
@@ -3,9 +3,6 @@ source "https://rubygems.org"
3
3
  # Specify your gem's dependencies in turbo_test_ruby_refinements.gemspec
4
4
  gemspec
5
5
 
6
- gem "rake"
7
- gem "minitest"
8
- gem "simplecov"
9
- gem "byebug"
10
- gem "rubocop"
11
- gem "mocha"
6
+ eval_gemfile(File.expand_path("Gemfile.common", __dir__))
7
+
8
+ gem "simplecov", "~> 0.18.5"
@@ -0,0 +1,5 @@
1
+ gem "rake"
2
+ gem "minitest"
3
+ gem "byebug"
4
+ gem "rubocop"
5
+ gem "mocha"
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- turbo-test-ruby-refinements (0.1.0)
4
+ turbo_test_ruby_refinements (0.1.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -45,8 +45,8 @@ DEPENDENCIES
45
45
  mocha
46
46
  rake
47
47
  rubocop
48
- simplecov
49
- turbo-test-ruby-refinements!
48
+ simplecov (~> 0.18.5)
49
+ turbo_test_ruby_refinements!
50
50
 
51
51
  BUNDLED WITH
52
52
  2.1.4
@@ -0,0 +1,9 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in turbo_test_ruby_refinements.gemspec
4
+ gemspec
5
+
6
+ eval_gemfile(File.expand_path("Gemfile.common", __dir__))
7
+
8
+ gem "simplecov", "~> 0.16.1"
9
+ gem "coveralls"
@@ -0,0 +1,71 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ turbo_test_ruby_refinements (0.1.0)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ ast (2.4.1)
10
+ byebug (11.1.3)
11
+ coveralls (0.7.2)
12
+ multi_json (~> 1.3)
13
+ rest-client (= 1.6.7)
14
+ simplecov (>= 0.7)
15
+ term-ansicolor (= 1.2.2)
16
+ thor (= 0.18.1)
17
+ docile (1.3.2)
18
+ json (2.3.1)
19
+ mime-types (3.3.1)
20
+ mime-types-data (~> 3.2015)
21
+ mime-types-data (3.2020.0512)
22
+ minitest (5.14.1)
23
+ mocha (1.11.2)
24
+ multi_json (1.15.0)
25
+ parallel (1.19.2)
26
+ parser (2.7.1.4)
27
+ ast (~> 2.4.1)
28
+ rainbow (3.0.0)
29
+ rake (13.0.1)
30
+ regexp_parser (1.7.1)
31
+ rest-client (1.6.7)
32
+ mime-types (>= 1.16)
33
+ rexml (3.2.4)
34
+ rubocop (0.89.0)
35
+ parallel (~> 1.10)
36
+ parser (>= 2.7.1.1)
37
+ rainbow (>= 2.2.2, < 4.0)
38
+ regexp_parser (>= 1.7)
39
+ rexml
40
+ rubocop-ast (>= 0.1.0, < 1.0)
41
+ ruby-progressbar (~> 1.7)
42
+ unicode-display_width (>= 1.4.0, < 2.0)
43
+ rubocop-ast (0.3.0)
44
+ parser (>= 2.7.1.4)
45
+ ruby-progressbar (1.10.1)
46
+ simplecov (0.16.1)
47
+ docile (~> 1.1)
48
+ json (>= 1.8, < 3)
49
+ simplecov-html (~> 0.10.0)
50
+ simplecov-html (0.10.2)
51
+ term-ansicolor (1.2.2)
52
+ tins (~> 0.8)
53
+ thor (0.18.1)
54
+ tins (0.13.2)
55
+ unicode-display_width (1.7.0)
56
+
57
+ PLATFORMS
58
+ ruby
59
+
60
+ DEPENDENCIES
61
+ byebug
62
+ coveralls
63
+ minitest
64
+ mocha
65
+ rake
66
+ rubocop
67
+ simplecov (~> 0.16.1)
68
+ turbo_test_ruby_refinements!
69
+
70
+ BUNDLED WITH
71
+ 2.1.4
data/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ ![Tests](https://github.com/dunkelbraun/turbo-test-ruby-refinements/workflows/Tests/badge.svg?branch=main)
2
+ [![Maintainability](https://api.codeclimate.com/v1/badges/d84d7949fbabe8712161/maintainability)](https://codeclimate.com/github/dunkelbraun/turbo-test-ruby-refinements/maintainability)
3
+ [![Coverage Status](https://coveralls.io/repos/github/dunkelbraun/turbo-test-ruby-refinements/badge.svg?branch=main)](https://coveralls.io/github/dunkelbraun/turbo-test-ruby-refinements?branch=main)
4
+
1
5
  # TurboTestRubyRefinements
2
6
 
3
7
  Collection of refinements for Ruby classes:
data/Rakefile CHANGED
@@ -12,3 +12,8 @@ Rake::TestTask.new(:test) do |t|
12
12
  end
13
13
 
14
14
  task default: :test
15
+
16
+ if ENV["CI"]
17
+ require "coveralls/rake/task"
18
+ Coveralls::RakeTask.new
19
+ end
@@ -8,16 +8,21 @@ module TurboTestRubyRefinements
8
8
  # h = { key1: "1", key2: "2", key3: { key4: { key41: "3", key42: "4" }
9
9
  # h.leaf_paths => [ "key1", "key2", "key3.key4.key41", "key3.key4.key42" ]
10
10
  def leaf_paths(hash = {}, memo = [], scope = [])
11
- unless hash.is_a?(Hash)
12
- memo << scope.join(".")
11
+ case hash
12
+ when Hash
13
+ traverse_hash(hash, memo, scope)
14
+ memo
15
+ else
16
+ memo.push scope.join(".")
13
17
  scope.pop
14
- return
15
18
  end
19
+ end
20
+
21
+ def traverse_hash(hash, memo, scope)
16
22
  hash.each_key do |key|
17
- leaf_paths(hash[key], memo, scope << key)
23
+ leaf_paths(hash[key], memo, scope.push(key))
18
24
  scope.pop if scope.last == key
19
25
  end
20
- memo
21
26
  end
22
27
  end
23
28
  end
@@ -20,15 +20,18 @@ module TurboTestRubyRefinements
20
20
  refine ::String do
21
21
  def relative_path
22
22
  StringRelativePath.fetch(self) do
23
- path = Pathname.new(self)
24
- return self unless path.exist?
23
+ return self unless File.exist?(self)
25
24
 
26
- unless path.relative?
27
- path = path.realpath.relative_path_from(StringRelativePath.app_root_path)
28
- end
25
+ path = path_to_relative_path(Pathname.new(self))
29
26
  path.cleanpath.to_s
30
27
  end
31
28
  end
29
+
30
+ def path_to_relative_path(path)
31
+ return path if path.relative?
32
+
33
+ path.realpath.relative_path_from(StringRelativePath.app_root_path)
34
+ end
32
35
  end
33
36
 
34
37
  refine ::NilClass do
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module TurboTestRubyRefinements
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: turbo_test_ruby_refinements
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcos Essindi
@@ -52,7 +52,10 @@ files:
52
52
  - Appraisals
53
53
  - CODE_OF_CONDUCT.md
54
54
  - Gemfile
55
+ - Gemfile.common
55
56
  - Gemfile.lock
57
+ - GemfileCI
58
+ - GemfileCI.lock
56
59
  - LICENSE.txt
57
60
  - Makefile
58
61
  - README.md