filentory-cli 0.4.0 → 0.6.2

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
- SHA1:
3
- metadata.gz: 53fe9ba1d8dec98d862e52f0c760eb0b70ff7c71
4
- data.tar.gz: 611bd7719ad378bef60f4e367e7fcf98d89af444
2
+ SHA256:
3
+ metadata.gz: 4ed7dd8e9a60fec6b134f91c79c37588820e273706146699dc36c4f889a36872
4
+ data.tar.gz: a6f103ef0d3c089b525a9f07c80496b7b97a887f21e9813975faeae104725be2
5
5
  SHA512:
6
- metadata.gz: 69edf28c0a232d88d7ad86e08dcd1b04fe15daeb31a966028cb5123fac122580b29047fa697dcd0a0f804314cc18c0847b80c606dbb12da59460306f85509d9c
7
- data.tar.gz: 8a1bfce969c4c435a4c8878b7e5650c280d3c0d563ee9310648cdc41996e9d53724b185acc140a4f1d6c235e08222c465f1d8f6afd6696ff80a1ae41af082fa7
6
+ metadata.gz: d9985d977d2ce8a777730b6009064e44a982343779cf419502802c92afdc1bc2ec82965c74da8a206af108cd4709f98d8e9f7764fc25b04c665ee34e1a89b773
7
+ data.tar.gz: 4215eed8324d228c8b598ba4894545c727b6fddc83e9d4402d3a1c1d11abb97248578996db46beb45e3b4041e44f9e9edbb308a980fbbbe11289f92b451a67bf
@@ -34,7 +34,7 @@ end
34
34
  Then(/^the image file should have metadata$/) do
35
35
  steps %Q{
36
36
  And the JSON at "files/0/2/metadata" should be a hash
37
- And the JSON at "files/0/2/metadata" should have 6 entries
37
+ And the JSON at "files/0/2/metadata" should have 7 entries
38
38
  And the JSON at "files/0/2/metadata/exif.artist" should be "Johnny Graber"
39
39
  And the JSON at "files/0/2/metadata/exif.date_time" should be "2013-11-02T18:10:43+00:00"
40
40
  }
@@ -1,21 +1,28 @@
1
1
  require 'simplecov'
2
2
  require 'aruba/cucumber'
3
3
  require 'methadone/cucumber'
4
- require "json_spec/cucumber"
5
- require 'fakeweb'
6
- require 'rack/test'
7
-
8
- ENV['PATH'] = "#{File.expand_path(File.dirname(__FILE__) + '/../../bin')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
9
- LIB_DIR = File.join(File.expand_path(File.dirname(__FILE__)),'..','..','lib')
4
+ require 'json_spec/cucumber'
10
5
 
6
+ PROJECT_ROOT = File.join(File.dirname(__FILE__),'..','..')
7
+ ENV['PATH'] = "#{File.join(PROJECT_ROOT,'bin')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
8
+ ARUBA_DIR = File.join(%w(tmp aruba))
11
9
  Before do
12
- # Using "announce" causes massive warnings on 1.9.2
10
+ @dirs = [ARUBA_DIR]
13
11
  @puts = true
12
+ @aruba_timeout_seconds = 60
14
13
  @original_rubylib = ENV['RUBYLIB']
15
- ENV['RUBYLIB'] = LIB_DIR + File::PATH_SEPARATOR + ENV['RUBYLIB'].to_s
14
+ @original_rubyopt = ENV['RUBYOPT']
15
+
16
+ # We want to use, hopefully, the methadone from this codebase and not
17
+ # the gem, so we put it in the RUBYLIB
18
+ ENV['RUBYLIB'] = File.join(PROJECT_ROOT,'lib') + File::PATH_SEPARATOR + ENV['RUBYLIB'].to_s
16
19
 
20
+ # We need -rubygems here so that 1.8-style rubies work AND travis-ci doesn't barf with it in the shebang line
21
+ ENV['RUBYOPT'] = (ENV['RUBYOPT'] || '') + ' -r rubygems'
17
22
  end
18
23
 
19
24
  After do
20
- ENV['RUBYLIB'] = @original_rubylib
21
- end
25
+ # Put back how it was
26
+ ENV['RUBYLIB'] = @original_rubylib
27
+ ENV['RUBYOPT'] = @original_rubyopt
28
+ end
@@ -22,7 +22,7 @@ class Collector
22
22
  end
23
23
  result << extract_file_infos(file)
24
24
  rescue => file_error
25
- error ("error with file '#{path}': #{file}")
25
+ error ("error with file '#{path}': #{file} => #{file_error}")
26
26
  end
27
27
  end
28
28
 
@@ -67,4 +67,4 @@ class Collector
67
67
  end
68
68
 
69
69
  end
70
- end
70
+ end
@@ -1,8 +1,8 @@
1
- require 'exifr'
1
+ require 'exifr/jpeg'
2
2
  require 'xmp'
3
- require 'string-scrub'
3
+ require 'methadone'
4
4
 
5
- class ExifExtractor
5
+ class ExifExtractor include Methadone::CLILogging
6
6
 
7
7
  # Extracts the metadata of a file at a given path in the file system.
8
8
  def metadata_for_file(file_path)
@@ -30,39 +30,59 @@ class ExifExtractor
30
30
  def extract_xmp_meta_data(img, xmpValues)
31
31
  xmp = XMP.parse(img)
32
32
  xmp.namespaces.each do |namespace_name|
33
- namespace = xmp.send(namespace_name)
34
- namespace.attributes.each do |attr|
35
- begin
36
- returnval = namespace.send(attr)#.inspect
37
- #puts "returnval: #{returnval}"
38
- answer = returnval.scrub("*")
39
- xmpValues["#{namespace_name}.#{attr}"] = answer.strip.to_s[0..250]
40
- rescue => error
41
- #puts error
42
- end
33
+ namespace = xmp.send(namespace_name)
34
+ extract_namespace_attributes(namespace_name, namespace, xmpValues)
35
+ end
36
+ rescue => error_message
37
+ error ("#{error_message}")
38
+ end
39
+
40
+ def extract_namespace_attributes(namespace_name, namespace, xmpValues)
41
+ namespace.attributes.each do |attr|
42
+ begin
43
+ returnval = namespace.send(attr)#.inspect
44
+ #puts "returnval: #{returnval}"
45
+ answer = returnval.scrub("*")
46
+ xmpValues["#{namespace_name}.#{attr}"] = answer.strip.to_s[0...250]
47
+ rescue => error_message
48
+ error ("#{error_message}")
43
49
  end
44
50
  end
45
- rescue => error
46
- #puts error
47
51
  end
48
52
 
49
53
  def extract_exif_main_meta_data(img, xmpValues)
50
- xmpValues["exif.model"] = img.model.scrub("*").strip unless img.model.nil?
51
- xmpValues["exif.artist"] = img.artist.force_encoding('UTF-8').scrub("*").strip.to_s[0..250] unless img.artist.nil?
54
+ xmpValues["exif.model"] = cleanup_description(img.model)
55
+ xmpValues["exif.make"] = cleanup_description(img.make)
56
+ xmpValues["exif.artist"] = cleanup_description(img.artist)
52
57
  xmpValues["exif.date_time"] = format_date(img.date_time)
53
58
  xmpValues["exif.date_time_original"] = format_date(img.date_time_original)
54
59
  xmpValues["exif.width"] = img.width
55
60
  xmpValues["exif.height"] = img.height
56
- rescue => error
57
- #puts error
61
+ rescue => error_message
62
+ error ("#{error_message}")
58
63
  end
59
64
 
65
+ def cleanup_metadata(value)
66
+ value.scrub("*").strip unless value.nil?
67
+ end
68
+
69
+ def cleanup_description(value)
70
+ cleanup_metadata(value.force_encoding('UTF-8')).to_s[0...250] unless value.nil?
71
+ end
60
72
 
61
73
  def extract_gps_infos(img, xmpValues)
62
74
  if img.gps
63
- xmpValues["exif.gps.latitude"] = img.gps.latitude
64
- xmpValues["exif.gps.longitude"] = img.gps.longitude
65
- xmpValues["exif.gps.altitude"] = img.gps.altitude
75
+ assing_value_when_field_is_set(img.gps, :latitude, "exif.gps.latitude", xmpValues)
76
+
77
+ assing_value_when_field_is_set(img.gps, :longitude, "exif.gps.longitude", xmpValues)
78
+
79
+ assing_value_when_field_is_set(img.gps, :altitude, "exif.gps.altitude", xmpValues)
80
+ end
81
+ end
82
+
83
+ def assing_value_when_field_is_set(img, method, key_in_array, xmpValues)
84
+ if !img.send(method).nil? && !img.send(method).nan?
85
+ xmpValues[key_in_array] = img.send(method)
66
86
  end
67
87
  end
68
88
 
@@ -71,4 +91,4 @@ class ExifExtractor
71
91
  rescue
72
92
  nil
73
93
  end
74
- end
94
+ end
@@ -1,3 +1,3 @@
1
1
  module Filentory
2
- VERSION = "0.4.0"
2
+ VERSION = "0.6.2"
3
3
  end
@@ -0,0 +1,32 @@
1
+ require File.expand_path '../test_helper.rb', __FILE__
2
+ require 'minitest/autorun'
3
+ require 'filentory/collector'
4
+ require 'filentory'
5
+ require 'mkfifo'
6
+
7
+ class TestGPSInfo < Minitest::Test
8
+
9
+ def test_latitude_is_set
10
+ result = fetch_gps_result()
11
+ assert_equal(36.98276, result[0].metadata["exif.gps.latitude"])
12
+ end
13
+
14
+ def test_longitude_is_set
15
+ result = fetch_gps_result()
16
+ assert_equal(-110.11164666666667, result[0].metadata["exif.gps.longitude"])
17
+ end
18
+
19
+ def test_altitude_is_set
20
+ result = fetch_gps_result()
21
+ assert_equal(1709.4, result[0].metadata["exif.gps.altitude"])
22
+ end
23
+
24
+ private
25
+ def fetch_gps_result()
26
+ col = Collector.new
27
+ result = col.collect(File.dirname(__FILE__)+"/integration/gps/")
28
+ #puts "The result is: #{result}"
29
+ assert_equal(1, result.length)
30
+ result
31
+ end
32
+ end
@@ -0,0 +1,45 @@
1
+ require File.expand_path '../test_helper.rb', __FILE__
2
+ require 'minitest/autorun'
3
+ require 'filentory/collector'
4
+ require 'filentory'
5
+ require 'mkfifo'
6
+ require 'methadone'
7
+ require 'stringio'
8
+
9
+ class TestLogging < Minitest::Test
10
+ def setup
11
+ @pipe_path = File.dirname(__FILE__)+"/integration/special/pipe"
12
+ @real_stderr = $stderr
13
+ @real_stdout = $stdout
14
+ $stderr = StringIO.new
15
+ $stderr.sync = true
16
+ $stdout = StringIO.new
17
+ $stdout.sync = true
18
+ end
19
+
20
+ def teardown
21
+ $stderr = @real_stderr
22
+ $stdout = @real_stdout
23
+
24
+ if(File.exist?(@pipe_path))
25
+ FileUtils.rm(@pipe_path)
26
+ end
27
+ end
28
+
29
+ def test_pipes_are_logged
30
+ File.mkfifo(@pipe_path) unless File.exist?(@pipe_path)
31
+
32
+ col = Collector.new
33
+ col.logger = Logger.new($stdout)
34
+ col.logger.level = Logger::DEBUG
35
+ result = col.collect(File.dirname(__FILE__)+"/integration/special/")
36
+
37
+ assert_equal(2, result.length)
38
+
39
+ #assert_equal(Logger::DEBUG, col.logger.level)
40
+ #puts "STDERR: #{$stderr.string}"
41
+ #puts "STDOUT: #{$stdout.string}"
42
+ assert_includes($stdout.string, "skippking pipe")
43
+ end
44
+
45
+ end
@@ -0,0 +1,45 @@
1
+ require File.expand_path '../test_helper.rb', __FILE__
2
+ require 'minitest/autorun'
3
+ require 'filentory/collector'
4
+ require 'filentory'
5
+ require 'mkfifo'
6
+
7
+ class TestSpecialCases < Minitest::Test
8
+
9
+ def test_pipes_are_ignored
10
+ cleanup()
11
+
12
+ File.mkfifo(File.dirname(__FILE__)+"/integration/special/pipe")
13
+
14
+ col = Collector.new
15
+ result = col.collect(File.dirname(__FILE__)+"/integration/special/")
16
+ #puts "The result is: #{result}"
17
+ assert_equal(2, result.length)
18
+ assert_equal(".gitignore", result[0].name)
19
+ end
20
+
21
+ def test_exif_fields_are_filled_up
22
+ col = Collector.new
23
+ result = col.collect(File.dirname(__FILE__)+"/integration/special/")
24
+ #puts "The result is: #{result}"
25
+
26
+ assert_equal(2, result.length)
27
+ assert_equal("exif.jpg", result[1].name)
28
+ assert_equal(250, result[1].metadata['exif.artist'].length)
29
+ assert_equal(250, result[1].metadata['dc.description'].length)
30
+
31
+
32
+ assert_equal("Cannon", result[1].metadata['exif.make'])
33
+ assert_equal("EOS 6D", result[1].metadata['exif.model'])
34
+ assert_equal("2015-01-06T21:58:08+00:00", result[1].metadata['exif.date_time'])
35
+ assert_equal("2015-01-06T09:11:18+00:00", result[1].metadata['exif.date_time_original'])
36
+ assert_equal("Ipsach, Switzerland", result[1].metadata['Iptc4xmpCore.Location'])
37
+ end
38
+
39
+ def cleanup
40
+ if(File.exist?(File.dirname(__FILE__)+"/integration/special/pipe"))
41
+ FileUtils.rm(File.dirname(__FILE__)+"/integration/special/pipe")
42
+ end
43
+ end
44
+
45
+ end
@@ -10,7 +10,7 @@ class TestVideoExtractor < Minitest::Test
10
10
  metadata = extractor.metadata_for_file(File.dirname(__FILE__)+"/integration/data/video.mov")
11
11
 
12
12
  assert_in_delta(2.18, metadata["duration"], 0.05)
13
- assert_equal("568x320", metadata["resolution"])
13
+ assert_equal("320x568", metadata["resolution"])
14
14
  end
15
15
 
16
16
  def test_can_handle_avi
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: filentory-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johnny Graber
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-23 00:00:00.000000000 Z
11
+ date: 2021-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rdoc
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '6.1'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '6.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: aruba
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '0.14'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '0.14'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '10.3'
47
+ version: '13.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '10.3'
54
+ version: '13.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: fakeweb
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -72,70 +72,84 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.5.2
75
+ version: '2.2'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 1.5.2
82
+ version: '2.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rack-test
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.6.2
89
+ version: '1.1'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.6.2
96
+ version: '1.1'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: minitest
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '5.11'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '5.11'
111
+ - !ruby/object:Gem::Dependency
112
+ name: mkfifo
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: '0'
117
+ version: '0.1'
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - ">="
122
+ - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: '0'
124
+ version: '0.1'
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: methadone
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: '1.7'
131
+ version: '2.0'
118
132
  type: :runtime
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
136
  - - "~>"
123
137
  - !ruby/object:Gem::Version
124
- version: '1.7'
138
+ version: '2.0'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: oj
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '2.11'
145
+ version: '3.7'
132
146
  type: :runtime
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '2.11'
152
+ version: '3.7'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: json_spec
141
155
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +170,14 @@ dependencies:
156
170
  requirements:
157
171
  - - "~>"
158
172
  - !ruby/object:Gem::Version
159
- version: 1.2.0
173
+ version: 1.3.0
160
174
  type: :runtime
161
175
  prerelease: false
162
176
  version_requirements: !ruby/object:Gem::Requirement
163
177
  requirements:
164
178
  - - "~>"
165
179
  - !ruby/object:Gem::Version
166
- version: 1.2.0
180
+ version: 1.3.0
167
181
  - !ruby/object:Gem::Dependency
168
182
  name: xmp
169
183
  requirement: !ruby/object:Gem::Requirement
@@ -184,67 +198,38 @@ dependencies:
184
198
  requirements:
185
199
  - - "~>"
186
200
  - !ruby/object:Gem::Version
187
- version: 1.0.0
201
+ version: '3.0'
188
202
  type: :runtime
189
203
  prerelease: false
190
204
  version_requirements: !ruby/object:Gem::Requirement
191
205
  requirements:
192
206
  - - "~>"
193
207
  - !ruby/object:Gem::Version
194
- version: 1.0.0
195
- - !ruby/object:Gem::Dependency
196
- name: string-scrub
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - ">="
200
- - !ruby/object:Gem::Version
201
- version: '0'
202
- type: :runtime
203
- prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - ">="
207
- - !ruby/object:Gem::Version
208
- version: '0'
208
+ version: '3.0'
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: simplecov
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - "~>"
214
214
  - !ruby/object:Gem::Version
215
- version: 0.9.1
215
+ version: '0.16'
216
216
  type: :development
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
220
  - - "~>"
221
221
  - !ruby/object:Gem::Version
222
- version: 0.9.1
222
+ version: '0.16'
223
223
  description: A tool to create an inventory of a storage medium
224
224
  email:
225
225
  - jg@jgraber.ch
226
- executables:
227
- - filentory-cli
226
+ executables: []
228
227
  extensions: []
229
228
  extra_rdoc_files: []
230
229
  files:
231
- - ".gitignore"
232
- - ".simplecov"
233
- - ".travis.yml"
234
- - Gemfile
235
- - Gemfile.lock
236
- - LICENSE
237
- - README.md
238
- - README.rdoc
239
- - Rakefile
240
- - bin/filentory-cli
241
- - features/filentory-cli.feature
242
230
  - features/step_definitions/filentory-cli_steps.rb
243
- - features/support/auth.yaml
244
- - features/support/config.ru
245
231
  - features/support/demoserver.rb
246
232
  - features/support/env.rb
247
- - filentory-cli.gemspec
248
233
  - lib/filentory.rb
249
234
  - lib/filentory/collector.rb
250
235
  - lib/filentory/datastore.rb
@@ -253,21 +238,20 @@ files:
253
238
  - lib/filentory/sender.rb
254
239
  - lib/filentory/version.rb
255
240
  - lib/filentory/videoextractor.rb
256
- - results.html
257
- - test/integration/data/fileA.txt
258
- - test/integration/data/folder/fileB.txt
259
- - test/integration/data/image_with_exif_and_xmp_infos.jpg
260
- - test/integration/data/video.mov
261
241
  - test/tc_collector.rb
262
242
  - test/tc_datastore.rb
263
243
  - test/tc_exifextractor.rb
264
244
  - test/tc_fileentry.rb
245
+ - test/tc_gps_info.rb
246
+ - test/tc_logging.rb
265
247
  - test/tc_sender.rb
266
248
  - test/tc_something.rb
249
+ - test/tc_special_cases.rb
267
250
  - test/tc_videoextractor.rb
268
251
  - test/test_helper.rb
269
252
  homepage: https://github.com/jgraber/filentory-cli
270
- licenses: []
253
+ licenses:
254
+ - Apache-2.0
271
255
  metadata: {}
272
256
  post_install_message:
273
257
  rdoc_options: []
@@ -284,28 +268,23 @@ required_rubygems_version: !ruby/object:Gem::Requirement
284
268
  - !ruby/object:Gem::Version
285
269
  version: '0'
286
270
  requirements: []
287
- rubyforge_project:
288
- rubygems_version: 2.2.2
271
+ rubygems_version: 3.2.5
289
272
  signing_key:
290
273
  specification_version: 4
291
274
  summary: Filentory-cli is a first step to get order in a chaotic collection of storage
292
275
  medias.
293
276
  test_files:
294
- - features/filentory-cli.feature
295
277
  - features/step_definitions/filentory-cli_steps.rb
296
- - features/support/auth.yaml
297
- - features/support/config.ru
298
278
  - features/support/demoserver.rb
299
279
  - features/support/env.rb
300
- - test/integration/data/fileA.txt
301
- - test/integration/data/folder/fileB.txt
302
- - test/integration/data/image_with_exif_and_xmp_infos.jpg
303
- - test/integration/data/video.mov
304
280
  - test/tc_collector.rb
305
281
  - test/tc_datastore.rb
306
282
  - test/tc_exifextractor.rb
307
283
  - test/tc_fileentry.rb
284
+ - test/tc_gps_info.rb
285
+ - test/tc_logging.rb
308
286
  - test/tc_sender.rb
309
287
  - test/tc_something.rb
288
+ - test/tc_special_cases.rb
310
289
  - test/tc_videoextractor.rb
311
290
  - test/test_helper.rb
data/.gitignore DELETED
@@ -1,18 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- coverage
6
- InstalledFiles
7
- lib/bundler/man
8
- pkg
9
- rdoc
10
- spec/reports
11
- test/tmp
12
- test/version_tmp
13
- tmp
14
-
15
- # YARD artifacts
16
- .yardoc
17
- _yardoc
18
- doc/
data/.simplecov DELETED
@@ -1,4 +0,0 @@
1
- SimpleCov.start do
2
- add_filter "/test/"
3
- add_filter "/features/"
4
- end
data/.travis.yml DELETED
@@ -1,18 +0,0 @@
1
- language: ruby
2
- before_script:
3
- - "sudo apt-get update && sudo apt-get install -qq ffmpeg"
4
- # Ubuntu 14.4: - "sudo apt-get install -qq libav-tools && sudo ln /usr/bin/avconv /usr/bin/ffmpeg"
5
- - "bundle exec rackup features/support/config.ru &"
6
- rvm:
7
- - 2.0.0
8
- - 1.9.3
9
- - 2.1.2
10
- - jruby-head
11
- - jruby-19mode
12
- - rbx-2.2.3
13
- matrix:
14
- allow_failures:
15
- - rvm: jruby-head
16
- - rvm: jruby-19mode
17
- - rvm: rbx-2.2.3
18
- - rvm: 1.9.3
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in filentory-cli.gemspec
4
- gemspec