reviser 0.0.3.rc2 → 0.0.3
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 +4 -4
- data/LICENSE +674 -0
- data/config.yml +23 -7
- data/ext/valgrind.rb +25 -0
- data/ext/web_validators.rb +27 -17
- data/lang/C.yml +24 -1
- data/lang/HTML.yml +23 -1
- data/lang/Java.yml +24 -1
- data/lang/Ruby.yml +24 -1
- data/lib/exec.rb +23 -3
- data/lib/reviser.rb +27 -8
- data/lib/reviser/component.rb +23 -2
- data/lib/reviser/components/archiver.rb +21 -0
- data/lib/reviser/components/checker.rb +26 -5
- data/lib/reviser/components/extractors.rb +21 -0
- data/lib/reviser/components/generator.rb +21 -1
- data/lib/reviser/components/generators.rb +21 -0
- data/lib/reviser/components/organiser.rb +27 -5
- data/lib/reviser/config.rb +23 -2
- data/lib/reviser/criteria/code_analysis.rb +26 -2
- data/lib/reviser/criteria/compilation.rb +22 -1
- data/lib/reviser/criteria/execution.rb +23 -3
- data/lib/reviser/helpers/criteria.rb +24 -1
- data/lib/reviser/helpers/git.rb +22 -0
- data/lib/reviser/helpers/project.rb +25 -4
- data/lib/reviser/helpers/system.rb +25 -3
- data/lib/reviser/loggers/logger.rb +21 -0
- data/lib/reviser/loggers/modes.rb +21 -0
- data/lib/reviser/result.rb +22 -0
- metadata +5 -4
data/config.yml
CHANGED
@@ -1,7 +1,27 @@
|
|
1
|
-
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
2
22
|
|
3
23
|
################################################
|
4
|
-
#
|
24
|
+
# Template config file #
|
5
25
|
################################################
|
6
26
|
|
7
27
|
|
@@ -41,10 +61,6 @@ out_format:
|
|
41
61
|
# The type of project (<type>.yml must exists)
|
42
62
|
type: example/Labyrinthe
|
43
63
|
|
44
|
-
# Default timeout
|
45
|
-
# shall be overriden in sorts
|
46
|
-
timeout: 5
|
47
|
-
|
48
64
|
|
49
65
|
######## Global config ########
|
50
66
|
|
@@ -67,7 +83,7 @@ extensions:
|
|
67
83
|
|
68
84
|
# Whether to create a git repository for each project
|
69
85
|
# relies on 'git' gem
|
70
|
-
create_git_repo: true
|
86
|
+
# create_git_repo: true
|
71
87
|
|
72
88
|
# Options of all components
|
73
89
|
# For the moment, there is just verbose option (for logger)
|
data/ext/valgrind.rb
CHANGED
@@ -1,3 +1,28 @@
|
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
22
|
+
|
23
|
+
#
|
24
|
+
# @author Yann Prono
|
25
|
+
#
|
1
26
|
module Reviser
|
2
27
|
module Extensions
|
3
28
|
module Valgrind
|
data/ext/web_validators.rb
CHANGED
@@ -1,3 +1,25 @@
|
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
22
|
+
|
1
23
|
#
|
2
24
|
# @author Renan Strauss
|
3
25
|
#
|
@@ -7,7 +29,6 @@
|
|
7
29
|
# It's very simple at that point, but feel free to
|
8
30
|
# make the extension better :-)
|
9
31
|
#
|
10
|
-
|
11
32
|
module Reviser
|
12
33
|
module Extensions
|
13
34
|
module WebValidators
|
@@ -18,9 +39,6 @@ module Reviser
|
|
18
39
|
# if any
|
19
40
|
#
|
20
41
|
def validate_web
|
21
|
-
#
|
22
|
-
# TODO : explain the exception to the user
|
23
|
-
#
|
24
42
|
unless defined? W3CValidators
|
25
43
|
require_gem 'w3c_validators'
|
26
44
|
|
@@ -60,7 +78,7 @@ module Reviser
|
|
60
78
|
files = sources.select { |s| File.extname(s) == ".#{lang}" }
|
61
79
|
files.each do |f|
|
62
80
|
begin
|
63
|
-
response = validator.validate_file(File.new(f))
|
81
|
+
response = validator.validate_file(File.new(f, :encoding => 'utf-8'))
|
64
82
|
results[f] = {
|
65
83
|
:valid => response.errors.length == 0,
|
66
84
|
:errors => response.errors.length
|
@@ -68,9 +86,9 @@ module Reviser
|
|
68
86
|
|
69
87
|
print "="
|
70
88
|
rescue W3CValidators::ValidatorUnavailable => e
|
71
|
-
results[f] = e.message
|
89
|
+
results[f] = { valid: e.message, errors: 1 }
|
72
90
|
rescue Exception => e
|
73
|
-
results[f] = e.message
|
91
|
+
results[f] = { valid: e.message, errors: 1 }
|
74
92
|
end
|
75
93
|
end
|
76
94
|
puts "]"
|
@@ -79,21 +97,13 @@ module Reviser
|
|
79
97
|
end
|
80
98
|
|
81
99
|
def prettify results
|
82
|
-
return results unless results.values.first
|
83
|
-
|
84
|
-
headings = results.values.first.keys
|
85
|
-
|
86
100
|
html = '<table><tr><th>File</th>'
|
87
|
-
|
101
|
+
results.values.first.keys.each { |heading| html << "<th>#{heading.to_s.capitalize!}</th>" }
|
88
102
|
html << '</tr>'
|
89
103
|
|
90
104
|
results.each do |file, data|
|
91
105
|
html << "<tr><th>#{file}</th>"
|
92
|
-
|
93
|
-
data.values.each { |value| html << "<td>#{value}</td>" }
|
94
|
-
else
|
95
|
-
html << "<td>#{data}</td>"
|
96
|
-
end
|
106
|
+
data.values.each { |value| html << "<td>#{value}</td>" }
|
97
107
|
html << '</tr>'
|
98
108
|
end
|
99
109
|
html << '</table>'
|
data/lang/C.yml
CHANGED
@@ -1,5 +1,28 @@
|
|
1
|
-
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
22
|
+
|
23
|
+
#
|
2
24
|
# C language
|
25
|
+
#
|
3
26
|
|
4
27
|
# List of source files extensions
|
5
28
|
extension:
|
data/lang/HTML.yml
CHANGED
@@ -1,6 +1,28 @@
|
|
1
|
-
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
2
22
|
|
23
|
+
#
|
3
24
|
# HTML language
|
25
|
+
#
|
4
26
|
|
5
27
|
# List of source files extensions
|
6
28
|
# !!!!! Recent changes make me think
|
data/lang/Java.yml
CHANGED
@@ -1,5 +1,28 @@
|
|
1
|
-
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
22
|
+
|
23
|
+
#
|
2
24
|
# Java language
|
25
|
+
#
|
3
26
|
|
4
27
|
# List of source files extensions
|
5
28
|
extension:
|
data/lang/Ruby.yml
CHANGED
@@ -1,5 +1,28 @@
|
|
1
|
-
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
22
|
+
|
23
|
+
#
|
2
24
|
# Ruby language
|
25
|
+
#
|
3
26
|
|
4
27
|
# List of source files extensions
|
5
28
|
extension:
|
data/lib/exec.rb
CHANGED
@@ -1,3 +1,24 @@
|
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
1
22
|
require 'thor'
|
2
23
|
require 'fileutils'
|
3
24
|
require 'colorize'
|
@@ -15,7 +36,7 @@ require_relative 'reviser/helpers/criteria'
|
|
15
36
|
module Reviser
|
16
37
|
class Exec < Thor
|
17
38
|
|
18
|
-
VERSION = '0.0.3
|
39
|
+
VERSION = '0.0.3'
|
19
40
|
|
20
41
|
map '--version' => :version
|
21
42
|
map '-v' => :version
|
@@ -132,8 +153,7 @@ module Reviser
|
|
132
153
|
|
133
154
|
desc 'version', 'Print out version information'
|
134
155
|
def version
|
135
|
-
puts "Reviser #{VERSION}"
|
136
|
-
puts 'Released under the GPLv3 License.'
|
156
|
+
puts "Reviser".yellow + " " + "#{VERSION}".light_red + " Copyright (C) 2015 Renan Strauss, Yann Prono, Anthony Cerf, Romain Ruez"
|
137
157
|
end
|
138
158
|
|
139
159
|
|
data/lib/reviser.rb
CHANGED
@@ -1,12 +1,23 @@
|
|
1
1
|
#
|
2
|
-
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
3
|
#
|
4
|
-
#
|
5
|
-
#
|
6
|
-
#
|
7
|
-
#
|
8
|
-
#
|
9
|
-
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
10
21
|
#
|
11
22
|
require 'mkmf'
|
12
23
|
require 'colorize'
|
@@ -32,7 +43,15 @@ def require_gem gem_name
|
|
32
43
|
end
|
33
44
|
|
34
45
|
#
|
35
|
-
#
|
46
|
+
# @author Renan Strauss
|
47
|
+
#
|
48
|
+
# This class is basically here to give the user
|
49
|
+
# a generic and comprehensive way to use and
|
50
|
+
# customize the behavior of our tool.
|
51
|
+
# The main idea is that the user should not
|
52
|
+
# instantiate components himself, nor worry
|
53
|
+
# about the data these components exchange.
|
54
|
+
# It is the API entry point.
|
36
55
|
#
|
37
56
|
module Reviser
|
38
57
|
class Reviser
|
data/lib/reviser/component.rb
CHANGED
@@ -1,3 +1,26 @@
|
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
22
|
+
require_relative 'loggers/logger'
|
23
|
+
|
1
24
|
#
|
2
25
|
# The abstract class Component
|
3
26
|
# Even though Ruby doesn't have abstract classes,
|
@@ -6,8 +29,6 @@
|
|
6
29
|
#
|
7
30
|
# @author Renan Strauss
|
8
31
|
#
|
9
|
-
require_relative 'loggers/logger'
|
10
|
-
|
11
32
|
module Reviser
|
12
33
|
class Component
|
13
34
|
#
|
@@ -1,3 +1,24 @@
|
|
1
|
+
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
|
+
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
21
|
+
#
|
1
22
|
require 'fileutils'
|
2
23
|
require_relative 'extractors'
|
3
24
|
|
@@ -1,17 +1,38 @@
|
|
1
1
|
#
|
2
|
-
#
|
2
|
+
# Reviser => a semi-automatic tool for student's projects evaluation
|
3
3
|
#
|
4
|
-
#
|
5
|
-
#
|
6
|
-
#
|
7
|
-
#
|
4
|
+
# Copyright (C) 2015 Renan Strauss
|
5
|
+
# Copyright (C) 2015 Yann Prono
|
6
|
+
# Copyright (C) 2015 Romain Ruez
|
7
|
+
# Copyright (C) 2015 Anthony Cerf
|
8
|
+
#
|
9
|
+
# This program is free software: you can redistribute it and/or modify
|
10
|
+
# it under the terms of the GNU General Public License as published by
|
11
|
+
# the Free Software Foundation, either version 3 of the License, or
|
12
|
+
# (at your option) any later version.
|
8
13
|
#
|
14
|
+
# This program is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
17
|
+
# GNU General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU General Public License
|
20
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
9
21
|
#
|
10
22
|
require 'open3'
|
11
23
|
|
12
24
|
require_relative '../result'
|
13
25
|
require_relative '../helpers/criteria'
|
14
26
|
|
27
|
+
#
|
28
|
+
# @author Renan Strauss
|
29
|
+
#
|
30
|
+
# The Checker is a component that wraps
|
31
|
+
# all required tools to do the analysis.
|
32
|
+
# It adapts itself dynamically
|
33
|
+
# to the configuration
|
34
|
+
#
|
35
|
+
#
|
15
36
|
module Reviser
|
16
37
|
module Components
|
17
38
|
class Checker < Component
|