file-convert 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # file-convert [![Gem Version](https://badge.fury.io/rb/file-convert.svg)](http://badge.fury.io/rb/file-convert) [![Build Status](https://travis-ci.org/tolingo/file-convert.svg?branch=feature%2Ffix-specs-and-refactor)](https://travis-ci.org/tolingo/file-convert)
1
+ # file-convert [![Gem Version](https://badge.fury.io/rb/file-convert.svg)](http://badge.fury.io/rb/file-convert) [![Build Status](https://travis-ci.org/tolingo/file-convert.svg?branch=feature%2Ffix-specs-and-refactor)](https://travis-ci.org/tolingo/file-convert) [![tolingo](http://img.shields.io/badge/powered--by-tolingo-green.svg)](http://tolingo.com)
2
2
  [![Code Climate](https://codeclimate.com/repos/53f4984b6956807963019c1a/badges/7aef33ebfd86eb320a98/gpa.svg)](https://codeclimate.com/repos/53f4984b6956807963019c1a/feed) [![Test Coverage](https://codeclimate.com/repos/53f4984b6956807963019c1a/badges/7aef33ebfd86eb320a98/coverage.svg)](https://codeclimate.com/repos/53f4984b6956807963019c1a/feed) [![Dependency Status](https://gemnasium.com/tolingo/file-convert.svg)](https://gemnasium.com/tolingo/file-convert)
3
3
 
4
4
  > Use google-api-ruby-client and Google Drive to convert files from one mime-type to another.
@@ -41,8 +41,7 @@ conversion.save('path_to_new_file.pdf')
41
41
 
42
42
  * `$ bundle exec rake` for `rspec` and `rubocop`.
43
43
  * `$ bundle exec rake build` to also run the `integration` tests located at `spec/integration/**/*_integration.rb`.
44
- Note that you need to have a valid `config/file_convert.yml` present for these tests to work,
45
- since we want to actually test the integration with the Google API here. (Do not worry, TravisCI will run these test as well.)
44
+ Note that you need to configure valid Google API credentials (i.e. set `ENV['email']` and `ENV['pkcspath']`) for these tests to work, since we want to actually test the integration with the Google API here. (Do not worry, TravisCI will run these tests as well.)
46
45
 
47
46
  ## Contributing
48
47
 
@@ -15,12 +15,14 @@ module FileConvert
15
15
  def initialize(client, remote_file, mime_type)
16
16
  @client = client
17
17
  @remote_file = remote_file
18
- @original_file_data = remote_file.data
18
+ @original_upload_result = remote_file.original_file
19
+ @remote_file_data = remote_file.data
19
20
  @mime_type = mime_type
20
21
 
21
- # Raise if requested mime-type is not available
22
+ # Fail if upload errored
23
+ fail data_error_exception if @original_upload_result.error?
24
+ # Fail if requested mime-type is not available
22
25
  fail missing_mime_type_exception unless export_links.key?(mime_type)
23
- fail data_error_exception if @original_file_data.to_hash.key?('error')
24
26
 
25
27
  @file = fetch_file
26
28
  @body = @file.body
@@ -41,7 +43,8 @@ module FileConvert
41
43
  ##
42
44
  # @return [Hash] available mime-type download URIs
43
45
  def export_links
44
- @original_file_data['exportLinks'].to_hash
46
+ available_links = @remote_file_data['exportLinks'] || {}
47
+ available_links.to_hash
45
48
  end
46
49
 
47
50
  ###
@@ -56,7 +59,7 @@ module FileConvert
56
59
  end
57
60
 
58
61
  def data_error_exception
59
- Exception::UploadedFileDataError.new @original_file_data
62
+ Exception::UploadedFileDataError.new @original_upload_result
60
63
  end
61
64
 
62
65
  def missing_mime_type_exception
@@ -16,15 +16,14 @@ module FileConvert
16
16
  end
17
17
 
18
18
  class UploadedFileDataError < StandardError
19
- def initialize(file_data)
19
+ def initialize(upload_result)
20
20
  super()
21
- @file_data = file_data
21
+ @upload_result = upload_result
22
22
  end
23
23
 
24
24
  def message
25
25
  ''"
26
- An error occured while uploading the file.
27
- Data was: #{@file_data}
26
+ An error occured while uploading: #{@upload_result.error_message}.
28
27
  "''
29
28
  end
30
29
  end
@@ -2,7 +2,7 @@ module FileConvert
2
2
  module Version
3
3
  MAJOR = 0
4
4
  MINOR = 1
5
- TINY = 0
5
+ TINY = 1
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].compact.join('.')
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: file-convert
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2014-09-02 00:00:00.000000000 Z
14
+ date: 2014-09-08 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: google-api-client
@@ -36,7 +36,7 @@ dependencies:
36
36
  requirements:
37
37
  - - ~>
38
38
  - !ruby/object:Gem::Version
39
- version: 3.0.0
39
+ version: 3.1.0
40
40
  type: :development
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
@@ -44,7 +44,7 @@ dependencies:
44
44
  requirements:
45
45
  - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: 3.0.0
47
+ version: 3.1.0
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: rubocop
50
50
  requirement: !ruby/object:Gem::Requirement
@@ -52,7 +52,7 @@ dependencies:
52
52
  requirements:
53
53
  - - ~>
54
54
  - !ruby/object:Gem::Version
55
- version: 0.25.0
55
+ version: 0.26.0
56
56
  type: :development
57
57
  prerelease: false
58
58
  version_requirements: !ruby/object:Gem::Requirement
@@ -60,7 +60,7 @@ dependencies:
60
60
  requirements:
61
61
  - - ~>
62
62
  - !ruby/object:Gem::Version
63
- version: 0.25.0
63
+ version: 0.26.0
64
64
  - !ruby/object:Gem::Dependency
65
65
  name: rake
66
66
  requirement: !ruby/object:Gem::Requirement