time_until_break 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e15dbc1f2395361fc9a3b20734d72c9cc08ef7e1
4
- data.tar.gz: 209cd9860c8e5855eafcaa56ebb7b0c539a885ec
3
+ metadata.gz: 727b6ae3ac9e00f7384b66230e457c118beabf4d
4
+ data.tar.gz: 103477108b4ea4eead36f2e5e5c0940ee1450c92
5
5
  SHA512:
6
- metadata.gz: baee29464232487b9999f4ecfa775dec9cc6fb2d7c33f995aa9ad23555def591cb57813cb50b463f7624d23a140bf23b8508a4e86ab2adca7da78042bc9311cc
7
- data.tar.gz: 07789e2d383c2004f23bd43a5d1cbe8e6ed77cd02e626e8bbbd05fda97de0df1c7b60c30727aed800c4369d31123875464e392e926aa67989e6f5e6b4c224fd6
6
+ metadata.gz: cfd4fc23a87dc24b92cf7b260e35af2e9fa1a7ea5ae7887237eaf7753bf06e3dd973036cc5159fe65ceaca1efbbf7e43c80243e309191281ddc7c7cd2eeb794a
7
+ data.tar.gz: 791c636109d7815f897ab1844344888a50e5d069f304dcc91ed75eb9155941283ff124a78b6cc59b6f373139de603efef822be5f5dd208874e995df19b944022
@@ -3,14 +3,19 @@ require 'time'
3
3
 
4
4
  class TimeUntilBreak
5
5
 
6
- attr_reader :break_time
6
+ attr_reader :break_time, :break_time_end
7
7
 
8
- def initialize (break_time="16:45")
8
+ def initialize (break_time="16:45", break_time_end="17:00")
9
9
  @break_time = Time.parse(break_time)
10
+ @break_time_end = Time.parse(break_time_end)
10
11
  end
11
12
 
12
13
  def is_a_weekday
13
- has_break_been? ? missed_break : time_until_break
14
+ has_break_been? ? missed_break : check_time
15
+ end
16
+
17
+ def check_time
18
+ break_right_now? ? break_now : time_until_break
14
19
  end
15
20
 
16
21
  def is_a_weekend
@@ -25,13 +30,21 @@ class TimeUntilBreak
25
30
  end
26
31
 
27
32
  def has_break_been?
28
- current_time > @break_time
33
+ current_time > @break_time_end
29
34
  end
30
35
 
31
36
  def missed_break
32
37
  say_something("Sorry you missed the Mandatory Break.")
33
38
  end
34
39
 
40
+ def break_right_now?
41
+ current_time > @break_time && current_time < @break_time_end
42
+ end
43
+
44
+ def break_now
45
+ say_something("Get your shizzle on, it's break time right now. All around the world.")
46
+ end
47
+
35
48
  def current_time
36
49
  Time.now
37
50
  end
@@ -1,3 +1,3 @@
1
1
  class TimeUntilBreak
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -13,7 +13,7 @@ describe TimeUntilBreak do
13
13
  end
14
14
 
15
15
  it 'can have a new break time set' do
16
- time_two = TimeUntilBreak.new("14:30:00")
16
+ time_two = TimeUntilBreak.new("14:30:00", "14:45:00")
17
17
  expect(time_two.break_time.strftime("%H:%M:%S")).to eq "14:30:00"
18
18
  end
19
19
 
@@ -30,7 +30,7 @@ describe TimeUntilBreak do
30
30
  it 'can calculate how long until the next break in hours and minutes' do
31
31
  Delorean.time_travel_to(Time.utc(2014,11,17,10,36))
32
32
  expect(time).to receive(:`).with('say "6 hours, 9 minutes until the Mandatory Break."')
33
- time.message
33
+ time.run_me
34
34
  end
35
35
 
36
36
  it 'knows if it is not the weekend' do
@@ -43,4 +43,10 @@ describe TimeUntilBreak do
43
43
  expect(time.is_it_the_weekend?).to be true
44
44
  end
45
45
 
46
+ it 'knows if it is break time when called' do
47
+ Delorean.time_travel_to(Time.utc(2014,11,21,16,50))
48
+ expect(time).to receive(:`).with('say "Get your shizzle on, it\'s break time right now. All around the world."')
49
+ time.run_me
50
+ end
51
+
46
52
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: time_until_break
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen Giles
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-23 00:00:00.000000000 Z
11
+ date: 2014-11-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler