climer 0.0.2 → 0.1.0

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.
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