spektrum-log 0.0.3 → 0.0.4

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: 9330857443ccd589a06d1f4875f59a668ce8ab27
4
- data.tar.gz: ab6ad743c25f8dc939702cc4f57bbbdb18f64ceb
3
+ metadata.gz: 16e8299a9a5e5c9feef7434e6b06c31215be4d5d
4
+ data.tar.gz: ad822e2785f70364dca30e805f9f8b03d95be924
5
5
  SHA512:
6
- metadata.gz: f40393fb43726714756d89ec8088a7f7ac5ab2e991f3b2710c7c9c20aa9208cefd26fa4c37fb617436fe11224dc7ec4b3c1dc3c874e0ec9aade02d9b712d2514
7
- data.tar.gz: 45fbe2c0f2a386de2b2c0aa20cc7e35fd228081d7d77498588d949344d4b981753979f1866741a71aa23d1e01bce849ee51b42e3f966e2d16c05f3103f89c373
6
+ metadata.gz: d63ec8893c1647b5e231cfa208b7b4698d2d52bd23d9cf4ae37b69b3019814be57b7631f4ca2c5e371c1805d6ee94a3fb4f81cde5a21454d55b3bdf46912fb0a
7
+ data.tar.gz: 35794b8e3004dc3751a5657849214d997004e5f9d134011ff08f609348090412953627923a449ae31f6a2bf1062b6ed2f7042d4856b7753f6c1bc983fc28f8b6
@@ -11,7 +11,7 @@ module Spektrum
11
11
  end
12
12
 
13
13
  def duration
14
- @records.empty? ? 0 : @records.last.timestamp - @records.first.timestamp
14
+ @duration ||= ((@records.empty? ? 0 : @records.last.timestamp - @records.first.timestamp) / 256)
15
15
  end
16
16
 
17
17
  def empty?
@@ -19,36 +19,36 @@ module Spektrum
19
19
  end
20
20
 
21
21
  def bind_type
22
- case @headers.first.raw_data[2].unpack('C')[0]
23
- when 0x01..0x02
24
- 'DSM2'
25
- when 0x03..0x04
26
- 'DSMX'
27
- else
28
- 'Unknown'
29
- end
22
+ @bind_type ||= case @headers.first.raw_data[2].unpack('C')[0]
23
+ when 0x01..0x02
24
+ 'DSM2'
25
+ when 0x03..0x04
26
+ 'DSMX'
27
+ else
28
+ 'Unknown'
29
+ end
30
30
  end
31
31
 
32
32
  def model_name
33
- @headers.first.raw_data[8..18].unpack('Z*')[0]
33
+ @model_name ||= @headers.first.raw_data[8..18].unpack('Z*')[0].strip
34
34
  end
35
35
 
36
36
  def model_number
37
- @headers.first.raw_data[0].unpack('C')[0] + 1
37
+ @model_number ||= (@headers.first.raw_data[0].unpack('C')[0] + 1)
38
38
  end
39
39
 
40
40
  def model_type
41
- case @headers.first.raw_data[1].unpack('C')[0]
42
- when 0x00
43
- 'Fixed Wing'
44
- when 0x01
45
- 'Helicopter'
46
- else
47
- 'Unknown'
48
- end
41
+ @model_type ||= case @headers.first.raw_data[1].unpack('C')[0]
42
+ when 0x00
43
+ 'Fixed Wing'
44
+ when 0x01
45
+ 'Helicopter'
46
+ else
47
+ 'Unknown'
48
+ end
49
49
  end
50
50
 
51
51
  end
52
52
 
53
53
  end
54
- end
54
+ end
@@ -40,7 +40,7 @@ module Spektrum
40
40
  end
41
41
 
42
42
  def altitude
43
- two_byte_field(1..2)
43
+ @altitude ||= two_byte_field(1..2)
44
44
  end
45
45
 
46
46
  end
@@ -68,8 +68,7 @@ module Spektrum
68
68
  end
69
69
 
70
70
  def temperature
71
- temp = two_byte_field(5..6)
72
- temp
71
+ @temperature ||= two_byte_field(5..6)
73
72
  end
74
73
 
75
74
  def temperature?
@@ -79,13 +78,11 @@ module Spektrum
79
78
  private
80
79
 
81
80
  def raw_rpm
82
- rpm = two_byte_field(1..2)
83
- rpm
81
+ @raw_rpm ||= two_byte_field(1..2)
84
82
  end
85
83
 
86
84
  def raw_voltage
87
- volt = two_byte_field(3..4)
88
- volt
85
+ @raw_voltage ||= two_byte_field(3..4)
89
86
  end
90
87
 
91
88
  end
@@ -107,8 +104,7 @@ module Spektrum
107
104
  private
108
105
 
109
106
  def raw_rx_voltage
110
- volt = two_byte_field(13..14)
111
- volt
107
+ @raw_rx_voltage ||= two_byte_field(13..14)
112
108
  end
113
109
 
114
110
  end
@@ -120,33 +116,27 @@ module Spektrum
120
116
  end
121
117
 
122
118
  def x
123
- x = two_byte_field(1..2)
124
- x
119
+ @x ||= two_byte_field(1..2)
125
120
  end
126
121
 
127
122
  def y
128
- y = two_byte_field(3..4)
129
- y
123
+ @y ||= two_byte_field(3..4)
130
124
  end
131
125
 
132
126
  def z
133
- z = two_byte_field(5..6)
134
- z
127
+ @z ||= two_byte_field(5..6)
135
128
  end
136
129
 
137
130
  def x_max
138
- x = two_byte_field(7..8)
139
- x
131
+ @x_max ||= two_byte_field(7..8)
140
132
  end
141
133
 
142
134
  def y_max
143
- y = two_byte_field(9..10)
144
- y
135
+ @y_max ||= two_byte_field(9..10)
145
136
  end
146
137
 
147
138
  def z_max
148
- z = two_byte_field(11..12)
149
- z
139
+ @z_max ||= two_byte_field(11..12)
150
140
  end
151
141
 
152
142
  end
@@ -158,8 +148,7 @@ module Spektrum
158
148
  end
159
149
 
160
150
  def altitude
161
- alt = two_byte_field(1..2, :little)
162
- alt
151
+ @altitude ||= two_byte_field(1..2, :little)
163
152
  end
164
153
 
165
154
  def latitude
@@ -179,8 +168,7 @@ module Spektrum
179
168
  end
180
169
 
181
170
  def heading
182
- head = two_byte_field(11..12, :little)
183
- head / 10.0
171
+ @heading ||= (two_byte_field(11..12, :little) / 10.0)
184
172
  end
185
173
 
186
174
  end
@@ -215,8 +203,7 @@ module Spektrum
215
203
  end
216
204
 
217
205
  def sats
218
- sats = byte_field(7)
219
- sats
206
+ @sats ||= byte_field(7)
220
207
  end
221
208
 
222
209
  end
@@ -236,8 +223,7 @@ module Spektrum
236
223
  end
237
224
 
238
225
  def speed
239
- speed = two_byte_field(1..2)
240
- speed
226
+ @speed ||= two_byte_field(1..2)
241
227
  end
242
228
 
243
229
  end
@@ -1,5 +1,5 @@
1
1
  module Spektrum
2
2
  module Log
3
- VERSION = "0.0.3"
3
+ VERSION = "0.0.4"
4
4
  end
5
5
  end
data/spec/flight_spec.rb CHANGED
@@ -14,7 +14,7 @@ describe Spektrum::Log::Flight do
14
14
 
15
15
  it { should have(191).records }
16
16
 
17
- its(:duration) { should eql(1148) }
17
+ its(:duration) { should eql(4) }
18
18
 
19
19
  its(:bind_type) { should eql('DSMX') }
20
20
 
@@ -34,7 +34,7 @@ describe Spektrum::Log::Flight do
34
34
 
35
35
  it { should have(634).records }
36
36
 
37
- its(:duration) { should eql(3798) }
37
+ its(:duration) { should eql(14) }
38
38
 
39
39
  end
40
40
 
@@ -46,7 +46,7 @@ describe Spektrum::Log::Flight do
46
46
 
47
47
  it { should have(641).records }
48
48
 
49
- its(:duration) { should eql(3842) }
49
+ its(:duration) { should eql(15) }
50
50
 
51
51
  end
52
52
 
@@ -64,7 +64,17 @@ describe Spektrum::Log::Flight do
64
64
 
65
65
  it { should have(260).records }
66
66
 
67
- its(:duration) { should eql(570) }
67
+ it { should_not be_empty }
68
+
69
+ its(:duration) { should eql(2) }
70
+
71
+ its(:bind_type) { should eql('DSMX') }
72
+
73
+ its(:model_name) { should eql('Voodoo 600') }
74
+
75
+ its(:model_number) { should eql(1) }
76
+
77
+ its(:model_type) { should eql('Helicopter') }
68
78
 
69
79
  end
70
80
 
@@ -194,7 +204,7 @@ describe Spektrum::Log::Flight do
194
204
 
195
205
  it { should have(23155).records }
196
206
 
197
- its(:duration) { should eql(148365) }
207
+ its(:duration) { should eql(579) }
198
208
 
199
209
  it { should_not be_empty }
200
210
 
@@ -216,7 +226,7 @@ describe Spektrum::Log::Flight do
216
226
 
217
227
  it { should_not be_empty }
218
228
 
219
- its(:duration) { should eql(16325) }
229
+ its(:duration) { should eql(63) }
220
230
 
221
231
  its(:bind_type) { should eql('DSMX') }
222
232
 
data/spektrum-log.gemspec CHANGED
@@ -17,4 +17,5 @@ Gem::Specification.new do |gem|
17
17
 
18
18
  gem.add_development_dependency 'rspec', '~> 2.12'
19
19
  gem.add_development_dependency 'rake', '~> 10.0'
20
+ gem.add_development_dependency 'ci_reporter', '= 1.8.4'
20
21
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spektrum-log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Veys
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-06 00:00:00.000000000 Z
11
+ date: 2013-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: ci_reporter
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.8.4
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 1.8.4
41
55
  description: Read and interpret Spektrum TLM log files.
42
56
  email:
43
57
  - nick@codelever.com