codersdojo 1.5.01 → 1.5.02

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.
@@ -1,5 +1,4 @@
1
1
  require 'record/session_id_generator'
2
- require 'record/return_code_evaluator'
3
2
  require 'run/runner'
4
3
  require 'state_reader'
5
4
  require 'shell_argument_exception'
@@ -19,8 +18,7 @@ class ArgumentParser
19
18
 
20
19
  def initialize shell, view, scaffolder, hostname
21
20
  meta_config_file = MetaConfigFile.new shell
22
- return_code_evaluator = ReturnCodeEvaluator.new meta_config_file.success_detection
23
- runner = Runner.new shell, SessionIdGenerator.new, view, return_code_evaluator
21
+ runner = Runner.new shell, SessionIdGenerator.new, view, meta_config_file
24
22
  @help_command = HelpCommand.new view
25
23
  @xhelp_command = XHelpCommand.new view
26
24
  @generate_command = GenerateCommand.new shell, view, scaffolder
data/lib/run/runner.rb CHANGED
@@ -9,12 +9,12 @@ class Runner
9
9
 
10
10
  WORKING_DIR = '.'
11
11
 
12
- def initialize shell, session_provider, view, return_code_evaluator
13
- @filename_formatter = FilenameFormatter.new
12
+ def initialize shell, session_provider, view, meta_config_file
13
+ @filename_formatter = FilenameFormatter.new
14
14
  @shell = shell
15
15
  @session_provider = session_provider
16
16
  @view = view
17
- @return_code_evaluator = return_code_evaluator
17
+ @meta_config_file = meta_config_file
18
18
  end
19
19
 
20
20
  def start
@@ -31,6 +31,7 @@ class Runner
31
31
  end
32
32
 
33
33
  def execute
34
+ return_code_evaluator = ReturnCodeEvaluator.new meta_config_file.success_detection
34
35
  files = @shell.files_in_dir_tree WORKING_DIR, @source_files
35
36
  newest_dir_entry = @shell.newest_dir_entry WORKING_DIR, files
36
37
  change_time = @shell.modification_time newest_dir_entry
@@ -40,16 +41,16 @@ class Runner
40
41
  end
41
42
  Progress.end
42
43
  @view.show_run_once_message newest_dir_entry, change_time
43
- execute_once files, @session_id, @step
44
+ execute_once files, @session_id, @step, return_code_evaluator
44
45
  @step += 1
45
46
  @previous_change_time = change_time
46
47
  end
47
48
 
48
- def execute_once files, session_id, step
49
+ def execute_once files, session_id, step, return_code_evaluator
49
50
  process = @shell.execute @run_command
50
51
  result = TextConverter.new.remove_escape_sequences process.output
51
52
  state_dir = @filename_formatter.state_dir session_id, step
52
- return_code = @return_code_evaluator.return_code(process)
53
+ return_code = return_code_evaluator.return_code(process)
53
54
  @shell.mkdir state_dir
54
55
  @shell.cp_r files, state_dir
55
56
  @shell.write_file @filename_formatter.result_file(state_dir), result
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 1
7
7
  - 5
8
- - 1
9
- version: 1.5.01
8
+ - 2
9
+ version: 1.5.02
10
10
  platform: ruby
11
11
  authors:
12
12
  - CodersDojo-Team