File tree Expand file tree Collapse file tree 4 files changed +35
-73
lines changed Expand file tree Collapse file tree 4 files changed +35
-73
lines changed Original file line number Diff line number Diff line change 6
6
require 'tmpdir'
7
7
8
8
RSpec . describe CC ::Engine ::Analyzers ::Javascript ::Main do
9
- around do |example |
10
- Dir . mktmpdir do |directory |
11
- @code = directory
12
-
13
- Dir . chdir ( directory ) do
14
- example . run
15
- end
16
- end
17
- end
9
+ include AnalyzerSpec
18
10
19
11
describe "#run" do
20
12
it "prints an issue" do
68
60
expect ( issues . length ) . to eq 1
69
61
end
70
62
71
- def create_source_file ( path , content )
72
- File . write ( File . join ( @code , path ) , content )
73
- end
74
-
75
- def run_engine ( config = nil )
76
- io = StringIO . new
77
-
78
- engine = ::CC ::Engine ::Analyzers ::Javascript ::Main . new ( engine_config : config )
79
- reporter = ::CC ::Engine ::Analyzers ::Reporter . new ( double ( concurrency : 2 ) , engine , io )
80
-
81
- reporter . run
82
-
83
- io . string
84
- end
85
-
86
63
def engine_conf
87
64
CC ::Engine ::Analyzers ::EngineConfig . new ( {
88
65
'config' => {
Original file line number Diff line number Diff line change 6
6
require "tmpdir"
7
7
8
8
RSpec . describe CC ::Engine ::Analyzers ::Python ::Main do
9
- around do |example |
10
- Dir . mktmpdir do |directory |
11
- @code = directory
12
-
13
- Dir . chdir ( directory ) do
14
- example . run
15
- end
16
- end
17
- end
9
+ include AnalyzerSpec
18
10
19
11
describe "#run" do
20
12
it "prints an issue" do
46
38
end
47
39
end
48
40
49
- def create_source_file ( path , content )
50
- File . write ( File . join ( @code , path ) , content )
51
- end
52
-
53
- def run_engine ( config = nil )
54
- io = StringIO . new
55
-
56
- engine = ::CC ::Engine ::Analyzers ::Python ::Main . new ( engine_config : config )
57
- reporter = ::CC ::Engine ::Analyzers ::Reporter . new ( double ( concurrency : 2 ) , engine , io )
58
-
59
- reporter . run
60
-
61
- io . string
62
- end
63
-
64
41
def engine_conf
65
42
CC ::Engine ::Analyzers ::EngineConfig . new ( {
66
43
"config" => {
Original file line number Diff line number Diff line change 5
5
require 'tmpdir'
6
6
7
7
RSpec . describe CC ::Engine ::Analyzers ::Ruby ::Main do
8
- around do |example |
9
- Dir . mktmpdir do |directory |
10
- @code = directory
11
-
12
- Dir . chdir ( directory ) do
13
- example . run
14
- end
15
- end
16
- end
8
+ include AnalyzerSpec
17
9
18
10
describe "#run" do
19
11
it "prints an issue" do
35
27
end
36
28
EORUBY
37
29
38
- result = run_engine . strip
30
+ result = run_engine ( engine_conf ) . strip
39
31
json = JSON . parse ( result )
40
32
41
33
expect ( json [ "type" ] ) . to eq ( "issue" )
60
52
EORUBY
61
53
62
54
expect {
63
- expect ( run_engine ) . to eq ( "" )
55
+ expect ( run_engine ( engine_conf ) ) . to eq ( "" )
64
56
} . to output ( /Skipping file/ ) . to_stderr
65
57
end
66
58
end
67
59
68
- def create_source_file ( path , content )
69
- File . write ( File . join ( @code , path ) , content )
70
- end
71
-
72
- def run_engine ( config = { } )
73
- io = StringIO . new
74
-
75
- config = CC ::Engine ::Analyzers ::EngineConfig . new ( config )
76
- engine = ::CC ::Engine ::Analyzers ::Ruby ::Main . new ( engine_config : config )
77
- reporter = ::CC ::Engine ::Analyzers ::Reporter . new ( double ( concurrency : 2 ) , engine , io )
78
-
79
- reporter . run
80
-
81
- io . string
60
+ def engine_conf
61
+ CC ::Engine ::Analyzers ::EngineConfig . new ( { } )
82
62
end
83
63
end
Original file line number Diff line number Diff line change
1
+ module AnalyzerSpec
2
+ def self . included ( base )
3
+ base . around do |example |
4
+ Dir . mktmpdir do |directory |
5
+ @code = directory
6
+
7
+ Dir . chdir ( directory ) do
8
+ example . run
9
+ end
10
+ end
11
+ end
12
+ end
13
+
14
+ def create_source_file ( path , content )
15
+ File . write ( File . join ( @code , path ) , content )
16
+ end
17
+
18
+ def run_engine ( config = nil )
19
+ io = StringIO . new
20
+
21
+ engine = described_class . new ( engine_config : config )
22
+ reporter = ::CC ::Engine ::Analyzers ::Reporter . new ( double ( concurrency : 2 ) , engine , io )
23
+
24
+ reporter . run
25
+
26
+ io . string
27
+ end
28
+ end
You can’t perform that action at this time.
0 commit comments