File tree Expand file tree Collapse file tree 6 files changed +37
-77
lines changed Expand file tree Collapse file tree 6 files changed +37
-77
lines changed Original file line number Diff line number Diff line change 5
5
require 'flay'
6
6
require 'tmpdir'
7
7
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
8
+ RSpec . describe CC ::Engine ::Analyzers ::Javascript ::Main , in_tmpdir : true do
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 5
5
require 'flay'
6
6
require 'tmpdir'
7
7
8
- RSpec . describe CC ::Engine ::Analyzers ::Php ::Main do
8
+ RSpec . describe CC ::Engine ::Analyzers ::Php ::Main , in_tmpdir : true do
9
9
around do |example |
10
10
Dir . mktmpdir do |directory |
11
11
@code = directory
Original file line number Diff line number Diff line change 5
5
require "flay"
6
6
require "tmpdir"
7
7
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
8
+ RSpec . describe CC ::Engine ::Analyzers ::Python ::Main , in_tmpdir : true do
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 4
4
require 'flay'
5
5
require 'tmpdir'
6
6
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
7
+ RSpec . describe CC ::Engine ::Analyzers ::Ruby ::Main , in_tmpdir : true do
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 12
12
mocks . verify_partial_doubles = true
13
13
end
14
14
15
+ config . around ( :example , :in_tmpdir ) do |example |
16
+ Dir . mktmpdir do |directory |
17
+ @code = directory
18
+
19
+ Dir . chdir ( directory ) do
20
+ example . run
21
+ end
22
+ end
23
+ end
24
+
15
25
config . order = :random
16
26
config . disable_monkey_patching!
17
27
end
Original file line number Diff line number Diff line change
1
+ module AnalyzerSpec
2
+ def create_source_file ( path , content )
3
+ File . write ( File . join ( @code , path ) , content )
4
+ end
5
+
6
+ def run_engine ( config = nil )
7
+ io = StringIO . new
8
+
9
+ engine = described_class . new ( engine_config : config )
10
+ reporter = ::CC ::Engine ::Analyzers ::Reporter . new ( double ( concurrency : 2 ) , engine , io )
11
+
12
+ reporter . run
13
+
14
+ io . string
15
+ end
16
+ end
You can’t perform that action at this time.
0 commit comments