rupower 0.1.5 → 0.1.6
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 +15 -0
- data/lib/rupower.rb +11 -5
- data/lib/rupower/version.rb +1 -1
- data/test/acceptance/rupower_test.rb +1 -1
- data/test/fixtures/upower_battery.txt +1 -1
- data/test/fixtures/upower_line_ac.txt +2 -2
- data/test/functional/rupower_battery_test.rb +1 -1
- data/test/functional/rupower_line_ac_test.rb +1 -1
- metadata +5 -10
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MGU2MmY1MjFiY2MzOTYwNDIyYTI2MTUwNWVlZjllN2M5YjU0YTljMA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
MTg2YWFjY2M5ZTU4NGIzZjlhMjg5MTI0NDNkODg5OGY1NzBiMjBhZA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NGM4Yjc0ODI0MjFhZjU5YjY0NmMzNWM4YjAwZTBiZTgwYjkwYTA5YTYzNDhi
|
10
|
+
YWNiMjQ3Mzc5M2NmOGI4NDA2OGM1Njc4MjQyZGJhNDA5NmIwOGIyMTBlNmJj
|
11
|
+
ZGNiOTBlM2YzOTUwNmFkNmVkMGYzMjExZGZhNWQ5ZjczMzg5ZDc=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MDVhNTE2NGRlOGJhOTM2ZWIyNjQ3MjJlNWI5NzdhOTJjNDc3MmY5Y2Y1MTQ2
|
14
|
+
NjJmZTdkNDAyNDAwNjEwNGM4MzdhZjlmMDRhNTRlZDYzODE4MGZhYWM3NGEw
|
15
|
+
NGFhYTdkOTk5ZmNhY2Q0MzM4NDBhYWY3NDVjNTI2NWJhMDdlMDc=
|
data/lib/rupower.rb
CHANGED
@@ -4,12 +4,13 @@ require_relative "rupower/version"
|
|
4
4
|
module Rupower
|
5
5
|
|
6
6
|
module Parser
|
7
|
-
TIME
|
8
|
-
|
7
|
+
TIME = Regexp.new(/\d{4},?\s(\d{2}:){2}\d{2}\s/)
|
8
|
+
ETA = Regexp.new(/(\d+\.\d)\s(hour|minute)/)
|
9
|
+
NUMBER = Regexp.new(/^\d+[.,]?\d*(|[%]|\s+\w+)$/) #( /\A[+-]?\d+?(\.\d+)?\Z/ )
|
9
10
|
end
|
10
11
|
|
11
12
|
class PowerDevice
|
12
|
-
def initialize( params = {refresh_always:true} )
|
13
|
+
def initialize( params = {refresh_always: true} )
|
13
14
|
@refresh_always = params[:refresh_always]
|
14
15
|
@command = params[:command] || Command.new
|
15
16
|
refresh
|
@@ -30,8 +31,12 @@ module Rupower
|
|
30
31
|
def typize( value )
|
31
32
|
res = value
|
32
33
|
res = value[/^yes$/] ? true : false if value[/^(yes|no)$/]
|
33
|
-
|
34
|
+
if value[Parser::NUMBER ]
|
35
|
+
value.gsub!(',','.')
|
36
|
+
res = value.to_f == value.to_i ? value.to_i : value.to_f
|
37
|
+
end
|
34
38
|
res = DateTime.parse( value ) if value.match( Parser::TIME )
|
39
|
+
res = value if value[Parser::ETA]
|
35
40
|
res
|
36
41
|
end
|
37
42
|
|
@@ -49,7 +54,8 @@ module Rupower
|
|
49
54
|
METHODS = [:native_path, :vendor, :model, :serial, :power_supply, :updated,
|
50
55
|
:has_history, :has_statistics, :present, :rechargeable, :state,
|
51
56
|
:energy, :energy_empty, :energy_full, :energy_full_design,
|
52
|
-
:energy_rate, :voltage, :percentage, :capacity, :technology
|
57
|
+
:energy_rate, :voltage, :percentage, :capacity, :technology,
|
58
|
+
:time_to_empty, :time_to_full]
|
53
59
|
|
54
60
|
METHODS.each do |method|
|
55
61
|
define_method method do
|
data/lib/rupower/version.rb
CHANGED
@@ -23,7 +23,7 @@ class RupowerTest < Test::Unit::TestCase
|
|
23
23
|
assert_instance_of( Float, @battery.voltage )
|
24
24
|
assert_instance_of( String, @battery.vendor )
|
25
25
|
assert_instance_of( String, @battery.native_path )
|
26
|
-
assert_instance_of( DateTime,
|
26
|
+
assert_instance_of( DateTime, @battery.updated )
|
27
27
|
end
|
28
28
|
|
29
29
|
def test_line_ac_get_methods_returns_correct_values
|
@@ -1,7 +1,7 @@
|
|
1
1
|
native-path: /sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:09/PNP0C09:00/ACPI0003:00/power_supply/AC
|
2
2
|
power supply: yes
|
3
|
-
updated:
|
3
|
+
updated: Wed 04 Dec 2013 02:06:26 AM CET (0 seconds ago)
|
4
4
|
has history: no
|
5
5
|
has statistics: no
|
6
6
|
line-power
|
7
|
-
online: yes
|
7
|
+
online: yes
|
@@ -33,7 +33,7 @@ class RupowerBatteryTest < Test::Unit::TestCase
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def test_updated_returns_correct_value
|
36
|
-
assert_equal( DateTime.parse("
|
36
|
+
assert_equal( DateTime.parse("Wed 04 Dec 2013 02:06:26 AM CET"), @battery.updated )
|
37
37
|
end
|
38
38
|
|
39
39
|
def test_has_history_returns_correct_value
|
@@ -22,7 +22,7 @@ class RupowerLineAcTest < Test::Unit::TestCase
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def test_updated_returns_correct_value
|
25
|
-
assert_equal( DateTime.parse("
|
25
|
+
assert_equal( DateTime.parse("Wed 04 Dec 2013 02:06:26 AM CET"), @line_ac.updated )
|
26
26
|
end
|
27
27
|
|
28
28
|
def test_has_history_returns_correct_value
|
metadata
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rupower
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.6
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- k-nowicki
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2013-12-04 00:00:00.000000000 Z
|
13
12
|
dependencies: []
|
14
13
|
description: ! 'Rupower is UPower (http://upower.freedesktop.org) interface for Ruby,
|
15
14
|
working for Battery and AC supply.
|
@@ -39,30 +38,26 @@ files:
|
|
39
38
|
- test/stubs/command_stub.rb
|
40
39
|
homepage: https://github.com/k-nowicki/rupower
|
41
40
|
licenses: []
|
41
|
+
metadata: {}
|
42
42
|
post_install_message:
|
43
43
|
rdoc_options: []
|
44
44
|
require_paths:
|
45
45
|
- lib
|
46
46
|
required_ruby_version: !ruby/object:Gem::Requirement
|
47
|
-
none: false
|
48
47
|
requirements:
|
49
48
|
- - ! '>='
|
50
49
|
- !ruby/object:Gem::Version
|
51
50
|
version: 1.9.2
|
52
51
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
53
|
-
none: false
|
54
52
|
requirements:
|
55
53
|
- - ! '>='
|
56
54
|
- !ruby/object:Gem::Version
|
57
55
|
version: '0'
|
58
|
-
segments:
|
59
|
-
- 0
|
60
|
-
hash: 151074513370215442
|
61
56
|
requirements: []
|
62
57
|
rubyforge_project:
|
63
|
-
rubygems_version:
|
58
|
+
rubygems_version: 2.0.2
|
64
59
|
signing_key:
|
65
|
-
specification_version:
|
60
|
+
specification_version: 4
|
66
61
|
summary: Rupower is UPower (http://upower.freedesktop.org) interface for Ruby.
|
67
62
|
test_files:
|
68
63
|
- test/acceptance/rupower_test.rb
|