climer 0.0.2 → 0.1.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: 650df75cf71f47ca799d5211055a3b1841bc8dbf
4
- data.tar.gz: c9bc5ef756ad5ca7fb6fa63dd8566e1a08df5ed3
3
+ metadata.gz: d6ba07d4da8d81a1f58cb74b624367515e803111
4
+ data.tar.gz: 778a4dc702e2d1261545fd8851951a92588f23fb
5
5
  SHA512:
6
- metadata.gz: 082fee7dc9a4e1f9df9c35f9375f1945a555700c0496a441d2ffd42fe15659cfe711e2977cf0444ab9ec436f1c4378435064e09f1d479793514b689759345e63
7
- data.tar.gz: d94b41de1b2a23096d08101e309bee488a1277b78d99925a42fd5896c6f649221406eded8ddb08cd261bccac1466fa25c03705ca2dddf8003b10b6700ff78965
6
+ metadata.gz: e79762cb5999f9038220e05cd029e0e5f2684712f70d1535568753c2f2d95aac7bfb4abb43dcb92b1b47b90911aa198c1151b44b503beaef090d015ad7b6481f
7
+ data.tar.gz: 5b615ad560c5d16db45f82c07f635a23c9714942986bd43446b849ce80a5e1e11a01790b1450be0461bcf9114b5d97ed9af10d3ff4950f6f44afb929bc37c8ca
data/bin/climer CHANGED
@@ -8,9 +8,16 @@ class App
8
8
  include Methadone::Main
9
9
  include Methadone::CLILogging
10
10
 
11
+ URGENCY_OPTIONS = [:low, :normal, :critical]
12
+
11
13
  main do |*time_until_notification|
12
- time_until_notification.each do |time|
13
- t = Climer::Timer.alert_in(time)
14
+ time_until_notification.each_with_index do |time, i|
15
+ t = Climer::Timer.alert_in(
16
+ time,
17
+ 'climer',
18
+ 'Timer expired!',
19
+ URGENCY_OPTIONS[i] || URGENCY_OPTIONS.last
20
+ )
14
21
  sleep(t.time_remaining.total + 5)
15
22
  end
16
23
  end
data/climer.gemspec CHANGED
@@ -21,6 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.add_dependency 'methadone', '~> 1.3.0'
22
22
  spec.add_dependency 'time_distribution'
23
23
  spec.add_dependency 'rufus-scheduler'
24
+ spec.add_dependency 'libnotify'
24
25
 
25
26
  spec.add_development_dependency "bundler", "~> 1.3"
26
27
  spec.add_development_dependency 'aruba'
@@ -31,5 +32,4 @@ Gem::Specification.new do |spec|
31
32
  spec.add_development_dependency 'pry-rescue', '~> 1.0'
32
33
  spec.add_development_dependency 'simplecov', '~> 0.7'
33
34
  spec.add_development_dependency 'timecop'
34
- # spec.add_development_dependency 'mocha', '~> 0.13'
35
35
  end
data/lib/climer/timer.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'rufus-scheduler'
2
2
  require 'duration'
3
3
  require 'time_distribution/smart_duration'
4
+ require 'libnotify'
4
5
  require_relative 'human_duration'
5
6
  using Climer::HumanDuration
6
7
 
@@ -25,8 +26,9 @@ class Timer
25
26
  attr_reader :alert_time
26
27
 
27
28
  CARRIAGE_RETURN = "\r"
28
- def initialize(duration)
29
+ def initialize(duration, alert_name = 'Climer::Timer', notification = 'Timer expired!', urgency = :normal)
29
30
  @alert_time = Time.now + duration
31
+
30
32
  puts "Alert set to activate at #{@alert_time.strftime('%l:%M %p on %B %e, %Y')}"
31
33
  print countdown_string
32
34
 
@@ -40,8 +42,8 @@ class Timer
40
42
  job.job_id
41
43
  )
42
44
  sleep TimeDistribution::SmartDuration.parse(countdown_update_interval).total
43
- puts ''
44
- puts "ALERT! Timer expired!"
45
+ puts "\nALERT! #{notification}"
46
+ Libnotify.show summary: alert_name, body: notification, urgency: urgency
45
47
  end
46
48
  end
47
49
 
@@ -1,3 +1,3 @@
1
1
  module Climer
2
- VERSION = "0.0.2"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -28,6 +28,5 @@ begin
28
28
  end
29
29
 
30
30
  require 'pry-rescue/minitest'
31
- #require 'mocha/setup'
32
31
  rescue LoadError
33
32
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: climer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dustin Morrill
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: libnotify
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement