eagletree-log 0.0.7 → 0.0.8
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 +7 -0
- data/lib/eagletree/log/file.rb +10 -0
- data/lib/eagletree/log/session.rb +5 -1
- data/lib/eagletree/log/version.rb +1 -1
- data/{data → spec/data}/empty.fdr +5 -5
- data/{data → spec/data}/funjet-gps.fdr +2936 -2936
- data/spec/data/invalid/castle/long-flight.csv +2853 -0
- data/spec/data/invalid/castle/multi-line-notes.csv +4607 -0
- data/spec/data/invalid/castle/multi-session-1.csv +972 -0
- data/spec/data/invalid/castle/multi-session-2.csv +5457 -0
- data/spec/data/invalid/castle/sample-1.csv +584 -0
- data/spec/data/invalid/empty.file +0 -0
- data/spec/data/invalid/spektrum/1.TLM +0 -0
- data/spec/data/invalid/spektrum/2.TLM +0 -0
- data/spec/data/invalid/spektrum/3.TLM +0 -0
- data/spec/data/invalid/spektrum/4.TLM +0 -0
- data/spec/data/invalid/spektrum/GPS.TLM +0 -0
- data/spec/data/invalid/spektrum/GPS2.TLM +0 -0
- data/spec/data/invalid/spektrum/X5-GPS1.TLM +0 -0
- data/spec/data/invalid/spektrum/X5-GPS2.TLM +0 -0
- data/spec/data/invalid/spektrum/X5-GPS3.TLM +0 -0
- data/{data → spec/data}/multi-session-1.fdr +11506 -11506
- data/{data → spec/data}/multi-session-2.fdr +6698 -6698
- data/{data → spec/data}/old-1.fdr +2215 -2215
- data/{data → spec/data}/old-2.fdr +7794 -7794
- data/{data → spec/data}/old-3.fdr +8723 -8723
- data/{data → spec/data}/t600-1.fdr +0 -0
- data/{data → spec/data}/t600-2.fdr +0 -0
- data/spec/file_spec.rb +74 -43
- data/spec/session_spec.rb +2 -0
- data/spec/spec_helper.rb +14 -2
- metadata +64 -44
File without changes
|
File without changes
|
data/spec/file_spec.rb
CHANGED
@@ -2,92 +2,123 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe EagleTree::Log::File do
|
4
4
|
|
5
|
-
|
5
|
+
describe '#new' do
|
6
6
|
|
7
|
-
|
7
|
+
context 'data file empty.fdr' do
|
8
8
|
|
9
|
-
|
9
|
+
subject { EagleTree::Log::File.new(data_file('empty.fdr')) }
|
10
10
|
|
11
|
-
|
11
|
+
it { should have(0).sessions }
|
12
12
|
|
13
|
-
|
13
|
+
its(:name) { should eql('Skywalker') }
|
14
14
|
|
15
|
-
|
15
|
+
its(:hardware) { should eql('74') }
|
16
16
|
|
17
|
-
|
17
|
+
its(:version) { should eql(10.04) }
|
18
18
|
|
19
|
-
|
19
|
+
end
|
20
20
|
|
21
|
-
|
21
|
+
context 'data file funjet-gps.fdr' do
|
22
22
|
|
23
|
-
|
23
|
+
subject { EagleTree::Log::File.new(data_file('funjet-gps.fdr')) }
|
24
24
|
|
25
|
-
|
25
|
+
it { should have(1).sessions }
|
26
26
|
|
27
|
-
|
27
|
+
its(:name) { should eql('FunJet') }
|
28
28
|
|
29
|
-
|
29
|
+
its(:hardware) { should eql('73') }
|
30
30
|
|
31
|
-
|
31
|
+
its(:version) { should eql(8.03) }
|
32
32
|
|
33
|
-
|
33
|
+
end
|
34
34
|
|
35
|
-
|
35
|
+
context 'data file multi-session-1.fdr' do
|
36
36
|
|
37
|
-
|
37
|
+
subject { EagleTree::Log::File.new(data_file('multi-session-1.fdr')) }
|
38
38
|
|
39
|
-
|
39
|
+
it { should have(3).sessions }
|
40
40
|
|
41
|
-
|
41
|
+
its(:name) { should eql('Helis') }
|
42
42
|
|
43
|
-
|
43
|
+
its(:hardware) { should eql('73') }
|
44
44
|
|
45
|
-
|
45
|
+
its(:version) { should eql(6.93) }
|
46
46
|
|
47
|
-
|
47
|
+
end
|
48
48
|
|
49
|
-
|
49
|
+
context 'data file multi-session-2.fdr' do
|
50
50
|
|
51
|
-
|
51
|
+
subject { EagleTree::Log::File.new(data_file('multi-session-2.fdr')) }
|
52
52
|
|
53
|
-
|
53
|
+
it { should have(3).sessions }
|
54
54
|
|
55
|
-
|
55
|
+
its(:name) { should eql('Losi XXX4') }
|
56
56
|
|
57
|
-
|
57
|
+
its(:hardware) { should eql('71') }
|
58
58
|
|
59
|
-
|
59
|
+
its(:version) { should eql(6.02) }
|
60
60
|
|
61
|
-
|
61
|
+
end
|
62
62
|
|
63
|
-
|
63
|
+
context 'data file t600-1.fdr' do
|
64
64
|
|
65
|
-
|
65
|
+
subject { EagleTree::Log::File.new(data_file('t600-1.fdr')) }
|
66
66
|
|
67
|
-
|
67
|
+
it { should have(1).sessions }
|
68
68
|
|
69
|
-
|
69
|
+
its(:name) { should eql('T-Rex 600') }
|
70
70
|
|
71
|
-
|
71
|
+
its(:hardware) { should eql('73') }
|
72
72
|
|
73
|
-
|
73
|
+
its(:version) { should eql(6.93) }
|
74
|
+
|
75
|
+
end
|
76
|
+
|
77
|
+
context 'data file t600-2.fdr' do
|
74
78
|
|
75
|
-
|
79
|
+
subject { EagleTree::Log::File.new(data_file('t600-2.fdr')) }
|
76
80
|
|
77
|
-
|
81
|
+
it { should have(1).sessions }
|
78
82
|
|
79
|
-
|
83
|
+
its(:name) { should eql('T-Rex 600') }
|
80
84
|
|
81
|
-
|
85
|
+
its(:hardware) { should eql('73') }
|
82
86
|
|
83
|
-
|
87
|
+
its(:version) { should eql(6.93) }
|
84
88
|
|
85
|
-
|
89
|
+
end
|
90
|
+
|
91
|
+
it 'should raise for invalid or missing files' do
|
92
|
+
files = invalid_data_files
|
93
|
+
files.should have(17).files
|
94
|
+
|
95
|
+
files.each do |f|
|
96
|
+
expect { EagleTree::Log::File.new(f) }.to raise_error
|
97
|
+
end
|
98
|
+
end
|
86
99
|
|
87
100
|
end
|
88
101
|
|
89
|
-
|
90
|
-
|
102
|
+
describe '#eagle_tree?' do
|
103
|
+
|
104
|
+
it 'should be false for invalid or missing files' do
|
105
|
+
files = invalid_data_files
|
106
|
+
files.should have(17).files
|
107
|
+
|
108
|
+
files.each do |f|
|
109
|
+
EagleTree::Log::File.eagle_tree?(f).should be_false
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
it 'should be true for valid files' do
|
114
|
+
files = data_files
|
115
|
+
files.should have(9).files
|
116
|
+
|
117
|
+
files.each do |f|
|
118
|
+
EagleTree::Log::File.eagle_tree?(f).should be_true
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
91
122
|
end
|
92
123
|
|
93
124
|
end
|
data/spec/session_spec.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -20,7 +20,19 @@ RSpec.configure do |config|
|
|
20
20
|
config.order = 'random'
|
21
21
|
end
|
22
22
|
|
23
|
+
# root from spec/data
|
23
24
|
def data_file(name)
|
24
|
-
|
25
|
-
|
25
|
+
File.expand_path("#{File.dirname(__FILE__)}/data/#{name}")
|
26
|
+
end
|
27
|
+
|
28
|
+
def data_files
|
29
|
+
dir = "#{File.dirname(__FILE__)}/data/#{dir}"
|
30
|
+
Dir.glob("#{dir}/*").select { |e| File.file? e }
|
31
|
+
end
|
32
|
+
|
33
|
+
def invalid_data_files
|
34
|
+
dir = "#{File.dirname(__FILE__)}/data/invalid"
|
35
|
+
invalid = Dir.glob("#{dir}/**/*").select { |e| File.file? e }
|
36
|
+
invalid << __FILE__
|
37
|
+
invalid << 'NOFILE.TLM'
|
26
38
|
end
|
metadata
CHANGED
@@ -1,36 +1,32 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eagletree-log
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.8
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Nick Veys
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-06
|
11
|
+
date: 2013-07-06 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: awesome_print
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: bundler
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: ci_reporter
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - '='
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - '='
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -62,7 +55,6 @@ dependencies:
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rake
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ~>
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ~>
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -78,7 +69,6 @@ dependencies:
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: rspec
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
73
|
- - ~>
|
84
74
|
- !ruby/object:Gem::Version
|
@@ -86,7 +76,6 @@ dependencies:
|
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
80
|
- - ~>
|
92
81
|
- !ruby/object:Gem::Version
|
@@ -94,55 +83,48 @@ dependencies:
|
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: simplecov
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - '>='
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: '0'
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- -
|
94
|
+
- - '>='
|
108
95
|
- !ruby/object:Gem::Version
|
109
96
|
version: '0'
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
98
|
name: simplecov-gem-adapter
|
112
99
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
100
|
requirements:
|
115
|
-
- -
|
101
|
+
- - '>='
|
116
102
|
- !ruby/object:Gem::Version
|
117
103
|
version: '0'
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
|
-
- -
|
108
|
+
- - '>='
|
124
109
|
- !ruby/object:Gem::Version
|
125
110
|
version: '0'
|
126
111
|
- !ruby/object:Gem::Dependency
|
127
112
|
name: simplecov-rcov
|
128
113
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
114
|
requirements:
|
131
|
-
- -
|
115
|
+
- - '>='
|
132
116
|
- !ruby/object:Gem::Version
|
133
117
|
version: '0'
|
134
118
|
type: :development
|
135
119
|
prerelease: false
|
136
120
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
121
|
requirements:
|
139
|
-
- -
|
122
|
+
- - '>='
|
140
123
|
- !ruby/object:Gem::Version
|
141
124
|
version: '0'
|
142
125
|
- !ruby/object:Gem::Dependency
|
143
126
|
name: ruby_kml
|
144
127
|
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
128
|
requirements:
|
147
129
|
- - ~>
|
148
130
|
- !ruby/object:Gem::Version
|
@@ -150,7 +132,6 @@ dependencies:
|
|
150
132
|
type: :runtime
|
151
133
|
prerelease: false
|
152
134
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
135
|
requirements:
|
155
136
|
- - ~>
|
156
137
|
- !ruby/object:Gem::Version
|
@@ -168,49 +149,88 @@ files:
|
|
168
149
|
- LICENSE.txt
|
169
150
|
- README.md
|
170
151
|
- Rakefile
|
171
|
-
- data/empty.fdr
|
172
|
-
- data/funjet-gps.fdr
|
173
|
-
- data/multi-session-1.fdr
|
174
|
-
- data/multi-session-2.fdr
|
175
|
-
- data/old-1.fdr
|
176
|
-
- data/old-2.fdr
|
177
|
-
- data/old-3.fdr
|
178
|
-
- data/t600-1.fdr
|
179
|
-
- data/t600-2.fdr
|
180
152
|
- eagletree-log.gemspec
|
181
153
|
- lib/eagletree/log.rb
|
182
154
|
- lib/eagletree/log/file.rb
|
183
155
|
- lib/eagletree/log/session.rb
|
184
156
|
- lib/eagletree/log/version.rb
|
157
|
+
- spec/data/empty.fdr
|
158
|
+
- spec/data/funjet-gps.fdr
|
159
|
+
- spec/data/invalid/castle/long-flight.csv
|
160
|
+
- spec/data/invalid/castle/multi-line-notes.csv
|
161
|
+
- spec/data/invalid/castle/multi-session-1.csv
|
162
|
+
- spec/data/invalid/castle/multi-session-2.csv
|
163
|
+
- spec/data/invalid/castle/sample-1.csv
|
164
|
+
- spec/data/invalid/empty.file
|
165
|
+
- spec/data/invalid/spektrum/1.TLM
|
166
|
+
- spec/data/invalid/spektrum/2.TLM
|
167
|
+
- spec/data/invalid/spektrum/3.TLM
|
168
|
+
- spec/data/invalid/spektrum/4.TLM
|
169
|
+
- spec/data/invalid/spektrum/GPS.TLM
|
170
|
+
- spec/data/invalid/spektrum/GPS2.TLM
|
171
|
+
- spec/data/invalid/spektrum/X5-GPS1.TLM
|
172
|
+
- spec/data/invalid/spektrum/X5-GPS2.TLM
|
173
|
+
- spec/data/invalid/spektrum/X5-GPS3.TLM
|
174
|
+
- spec/data/multi-session-1.fdr
|
175
|
+
- spec/data/multi-session-2.fdr
|
176
|
+
- spec/data/old-1.fdr
|
177
|
+
- spec/data/old-2.fdr
|
178
|
+
- spec/data/old-3.fdr
|
179
|
+
- spec/data/t600-1.fdr
|
180
|
+
- spec/data/t600-2.fdr
|
185
181
|
- spec/file_spec.rb
|
186
182
|
- spec/session_spec.rb
|
187
183
|
- spec/spec_helper.rb
|
188
184
|
homepage: ''
|
189
185
|
licenses:
|
190
186
|
- MIT
|
187
|
+
metadata: {}
|
191
188
|
post_install_message:
|
192
189
|
rdoc_options: []
|
193
190
|
require_paths:
|
194
191
|
- lib
|
195
192
|
required_ruby_version: !ruby/object:Gem::Requirement
|
196
|
-
none: false
|
197
193
|
requirements:
|
198
|
-
- -
|
194
|
+
- - '>='
|
199
195
|
- !ruby/object:Gem::Version
|
200
196
|
version: '0'
|
201
197
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
202
|
-
none: false
|
203
198
|
requirements:
|
204
|
-
- -
|
199
|
+
- - '>='
|
205
200
|
- !ruby/object:Gem::Version
|
206
201
|
version: '0'
|
207
202
|
requirements: []
|
208
203
|
rubyforge_project:
|
209
|
-
rubygems_version:
|
204
|
+
rubygems_version: 2.0.3
|
210
205
|
signing_key:
|
211
|
-
specification_version:
|
206
|
+
specification_version: 4
|
212
207
|
summary: Eagle Tree telemetry log file reader
|
213
208
|
test_files:
|
209
|
+
- spec/data/empty.fdr
|
210
|
+
- spec/data/funjet-gps.fdr
|
211
|
+
- spec/data/invalid/castle/long-flight.csv
|
212
|
+
- spec/data/invalid/castle/multi-line-notes.csv
|
213
|
+
- spec/data/invalid/castle/multi-session-1.csv
|
214
|
+
- spec/data/invalid/castle/multi-session-2.csv
|
215
|
+
- spec/data/invalid/castle/sample-1.csv
|
216
|
+
- spec/data/invalid/empty.file
|
217
|
+
- spec/data/invalid/spektrum/1.TLM
|
218
|
+
- spec/data/invalid/spektrum/2.TLM
|
219
|
+
- spec/data/invalid/spektrum/3.TLM
|
220
|
+
- spec/data/invalid/spektrum/4.TLM
|
221
|
+
- spec/data/invalid/spektrum/GPS.TLM
|
222
|
+
- spec/data/invalid/spektrum/GPS2.TLM
|
223
|
+
- spec/data/invalid/spektrum/X5-GPS1.TLM
|
224
|
+
- spec/data/invalid/spektrum/X5-GPS2.TLM
|
225
|
+
- spec/data/invalid/spektrum/X5-GPS3.TLM
|
226
|
+
- spec/data/multi-session-1.fdr
|
227
|
+
- spec/data/multi-session-2.fdr
|
228
|
+
- spec/data/old-1.fdr
|
229
|
+
- spec/data/old-2.fdr
|
230
|
+
- spec/data/old-3.fdr
|
231
|
+
- spec/data/t600-1.fdr
|
232
|
+
- spec/data/t600-2.fdr
|
214
233
|
- spec/file_spec.rb
|
215
234
|
- spec/session_spec.rb
|
216
235
|
- spec/spec_helper.rb
|
236
|
+
has_rdoc:
|