calcifer 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +20 -0
- data/Gemfile +4 -2
- data/Gemfile.lock +1 -1
- data/Rakefile +5 -3
- data/lib/calcifer/finders/module_name_finder.rb +27 -7
- data/lib/calcifer/version.rb +3 -1
- data/lib/calcifer.rb +12 -5
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8c5707a10355cd294158d90205376066eeb28c86641e9fc19175b2cd416bcd37
|
4
|
+
data.tar.gz: 060ab3bf12ca9c3794aed8735d66ac20676a950374c4fc00ab5f68ac4218ca50
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a431a5422bacd73123f432c964d1150a1d4d10de982f8e411c2b6a334a8c3d447930e46376075706d2e9dbbdcc86ddce13973a34f88cd42fed5074ef4b3cafd7
|
7
|
+
data.tar.gz: 2be6476fdde544faa31240ffb52237d56baf4bb28e9f254c9c92de72d221faf396397a388f6332f81902b81967b131935629d770d08503b28d4b4849737b8a3a
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
AllCops:
|
2
|
+
NewCops: enable
|
3
|
+
Exclude:
|
4
|
+
- 'bin/**/*'
|
5
|
+
- calcifer.gemspec
|
6
|
+
- spec/fixtures/**
|
7
|
+
|
8
|
+
Metrics/ModuleLength:
|
9
|
+
Exclude:
|
10
|
+
- spec/**/*.rb
|
11
|
+
|
12
|
+
Metrics/BlockLength:
|
13
|
+
Exclude:
|
14
|
+
- spec/**/*.rb
|
15
|
+
|
16
|
+
Style/Documentation:
|
17
|
+
Enabled: false
|
18
|
+
|
19
|
+
Metrics/MethodLength:
|
20
|
+
Max: 20
|
data/Gemfile
CHANGED
@@ -1,6 +1,8 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
3
|
+
source 'https://rubygems.org'
|
4
|
+
|
5
|
+
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
|
4
6
|
|
5
7
|
# Specify your gem's dependencies in calcifer.gemspec
|
6
8
|
gemspec
|
data/Gemfile.lock
CHANGED
data/Rakefile
CHANGED
@@ -10,24 +10,44 @@ module Calcifer
|
|
10
10
|
|
11
11
|
def initialize(file)
|
12
12
|
@file = file
|
13
|
+
@module_name = []
|
13
14
|
end
|
14
15
|
|
15
16
|
def execute
|
16
17
|
return unless @file
|
17
18
|
|
18
|
-
module_name = ''
|
19
19
|
@file.readlines.each do |line|
|
20
|
-
next if line
|
20
|
+
next if one_line_class_definition?(line)
|
21
21
|
|
22
|
-
if line
|
23
|
-
module_name
|
24
|
-
elsif line
|
25
|
-
module_name
|
22
|
+
if module_definition?(line)
|
23
|
+
@module_name << line.gsub('module', '').strip
|
24
|
+
elsif class_definition?(line)
|
25
|
+
@module_name << line.gsub('class', '').gsub(/<(.*)/, '').strip
|
26
26
|
break
|
27
27
|
end
|
28
28
|
end
|
29
29
|
|
30
|
-
|
30
|
+
mount_module_name
|
31
|
+
end
|
32
|
+
|
33
|
+
private
|
34
|
+
|
35
|
+
def one_line_class_definition?(line)
|
36
|
+
line.strip.match(ONE_LINE_CLASS_REGEX)&.length&.positive?
|
37
|
+
end
|
38
|
+
|
39
|
+
def module_definition?(line)
|
40
|
+
line.strip.match(MODULE_REGEX)&.length&.positive?
|
41
|
+
end
|
42
|
+
|
43
|
+
def class_definition?(line)
|
44
|
+
line.strip.match(CLASS_REGEX)&.length&.positive?
|
45
|
+
end
|
46
|
+
|
47
|
+
def mount_module_name
|
48
|
+
return unless @module_name.length.positive?
|
49
|
+
|
50
|
+
@module_name.join('::')
|
31
51
|
end
|
32
52
|
end
|
33
53
|
end
|
data/lib/calcifer/version.rb
CHANGED
data/lib/calcifer.rb
CHANGED
@@ -7,7 +7,15 @@ module Calcifer
|
|
7
7
|
class Error < StandardError; end
|
8
8
|
|
9
9
|
def self.execute
|
10
|
-
|
10
|
+
spec_files_path = graph_list_file.map(&:related_files_paths).flatten
|
11
|
+
spec_files_path_list = Calcifer::Finders::SpecFilesRelatedFinder.new(spec_files_path).execute
|
12
|
+
|
13
|
+
printf `echo #{spec_files_path_list}`
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def graph_list_file
|
11
19
|
graph_list_file = file_list.map(&->(file) { Calcifer::Buiders::RootFileBuilder.new(file).build }).compact
|
12
20
|
|
13
21
|
graph_list_file.each do |graph|
|
@@ -15,10 +23,9 @@ module Calcifer
|
|
15
23
|
graph_vertices = related_files.map { |related_file| [graph.file_path, related_file] }
|
16
24
|
graph.graph_root.add_edges(*graph_vertices)
|
17
25
|
end
|
26
|
+
end
|
18
27
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
printf `echo #{spec_files_path_list}`
|
28
|
+
def file_list
|
29
|
+
Calcifer::Finders::FilesDiffFinder.new.execute
|
23
30
|
end
|
24
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: calcifer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gustavo Duarte
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-02-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rgl
|
@@ -76,6 +76,7 @@ extra_rdoc_files: []
|
|
76
76
|
files:
|
77
77
|
- ".gitignore"
|
78
78
|
- ".rspec"
|
79
|
+
- ".rubocop.yml"
|
79
80
|
- ".travis.yml"
|
80
81
|
- CODE_OF_CONDUCT.md
|
81
82
|
- Gemfile
|