codersdojo 1.0.13 → 1.0.14

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.
data/app/runner.rb CHANGED
@@ -23,10 +23,12 @@ class Runner
23
23
  end
24
24
 
25
25
  def execute
26
- change_time = @shell.ctime @file
26
+ change_time = @shell.modification_time @file
27
27
  if change_time == @previous_change_time then
28
+ Progress.next
28
29
  return
29
30
  end
31
+ Progress.end
30
32
  result = @shell.execute @run_command
31
33
  result = TextConverter.new.remove_escape_sequences result
32
34
  state_dir = @filename_formatter.state_dir @session_id, @step
data/app/shell_wrapper.rb CHANGED
@@ -49,10 +49,14 @@ class ShellWrapper
49
49
  content
50
50
  end
51
51
 
52
- def ctime filename
52
+ def creation_time filename
53
53
  File.new(filename).ctime
54
54
  end
55
55
 
56
+ def modification_time filename
57
+ File.new(filename).mtime
58
+ end
59
+
56
60
  def real_dir_entries dir
57
61
  Dir.new(dir).entries - ["..", "."]
58
62
  end
data/spec/runner_spec.rb CHANGED
@@ -27,11 +27,11 @@ describe Runner, "in run mode" do
27
27
  end
28
28
 
29
29
  it "should create a state directory for every state" do
30
- @shell_mock.should_receive(:ctime).with("my_file.rb").and_return 1
30
+ @shell_mock.should_receive(:modification_time).with("my_file.rb").and_return 1
31
31
  @shell_mock.should_receive(:mkdir).with "#{STATE_DIR_PREFIX}0"
32
32
  @shell_mock.should_receive(:cp).with "my_file.rb", "#{STATE_DIR_PREFIX}0"
33
33
  @runner.start
34
- @shell_mock.should_receive(:ctime).with("my_file.rb").and_return 2
34
+ @shell_mock.should_receive(:modification_time).with("my_file.rb").and_return 2
35
35
  @shell_mock.should_receive(:mkdir).with "#{STATE_DIR_PREFIX}1"
36
36
  @shell_mock.should_receive(:cp).with "my_file.rb", "#{STATE_DIR_PREFIX}1"
37
37
  @runner.execute
@@ -39,11 +39,11 @@ describe Runner, "in run mode" do
39
39
 
40
40
  it "should not run if the kata file wasn't modified" do
41
41
  a_time = Time.new
42
- @shell_mock.should_receive(:ctime).with("my_file.rb").and_return a_time
42
+ @shell_mock.should_receive(:modification_time).with("my_file.rb").and_return a_time
43
43
  @shell_mock.should_receive(:mkdir).with "#{STATE_DIR_PREFIX}0"
44
44
  @shell_mock.should_receive(:cp).with "my_file.rb", "#{STATE_DIR_PREFIX}0"
45
45
  @runner.start
46
- @shell_mock.should_receive(:ctime).with("my_file.rb").and_return a_time
46
+ @shell_mock.should_receive(:modification_time).with("my_file.rb").and_return a_time
47
47
  @shell_mock.should_not_receive(:mkdir).with "#{STATE_DIR_PREFIX}1"
48
48
  @shell_mock.should_not_receive(:cp).with "my_file.rb", "#{STATE_DIR_PREFIX}1"
49
49
  @runner.execute
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codersdojo
3
3
  version: !ruby/object:Gem::Version
4
- hash: 13
4
+ hash: 11
5
5
  prerelease: false
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 13
10
- version: 1.0.13
9
+ - 14
10
+ version: 1.0.14
11
11
  platform: ruby
12
12
  authors:
13
13
  - CodersDojo-Team