loady 0.7.1 → 0.7.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
2
  SHA1:
3
- metadata.gz: 73912330c3f4b5362b36e18a110532db84d4635e
4
- data.tar.gz: 0f8a2bd49e4eb00fde4aff8ffe79fad9d24553e9
3
+ metadata.gz: 5431b74708121dcbdbc9ec5743fbaebb92e8940e
4
+ data.tar.gz: bd108b5bf37cf749ccb4195fce1f6549c07728f7
5
5
  SHA512:
6
- metadata.gz: 8e30064023249f1baaa1945a7f2b2a522d238f7c5742f2c8c591fcd50e28b8c96325dc6eeca86eca276485a46a73bf77c80a1d7fc9a30c001a57ffda3a4dd394
7
- data.tar.gz: 0ee3605df2936c3a96deff8b6e1f8edabe9f6776d4c7e180f70c25382ddca6948813617c1d43cb65e4a510653c211465d78c66c13c7c1fca0988250639afc9c4
6
+ metadata.gz: e4028a6a6bb1e71963ce84726e1bf8b6c907a868f2e95ab9a056e01cb6e549b23fae0c8e3a50aa6a1696b1091a725e94a1bad926a820beef176666d7c5e125c2
7
+ data.tar.gz: 6990fc622994fd3a70845e5129d23bf8d5a59fae6215c01163575cb8214ad3a96559609281ad95b12f0e2789b7f4ad216d28d4ba310623c92b5f69047bf728fb
data/Gemfile CHANGED
@@ -1,4 +1,7 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- # see loady.gemspec
3
+ group :test do
4
+ gem 'coveralls', require: false
5
+ end
6
+
4
7
  gemspec
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  [![Gem Version](https://badge.fury.io/rb/loady.png)](http://badge.fury.io/rb/loady)
2
2
  [![Build Status](https://api.travis-ci.org/teeparham/loady.png)](https://travis-ci.org/teeparham/loady)
3
3
  [![Code Climate](https://codeclimate.com/github/teeparham/loady.png)](https://codeclimate.com/github/teeparham/loady)
4
+ [![Coverage Status](https://coveralls.io/repos/teeparham/loady/badge.png)](https://coveralls.io/r/teeparham/loady)
4
5
 
5
6
  # Loady - A file loader with simple logging
6
7
 
@@ -15,15 +15,10 @@ module Loady
15
15
  attr_hash = {}
16
16
 
17
17
  names.each_with_index do |name, i|
18
- if i < self.size
19
- if options[:strip] && self[i]
20
- attr_hash[name] = self[i].strip
21
- else
22
- attr_hash[name] = self[i]
18
+ attr_hash[name] =
19
+ if i < self.size && self[i]
20
+ options[:strip] ? self[i].strip : self[i]
23
21
  end
24
- else
25
- attr_hash[name] = nil
26
- end
27
22
  end
28
23
 
29
24
  attr_hash
@@ -9,12 +9,6 @@ module Loady
9
9
  @line_number = 0
10
10
  end
11
11
 
12
- class << self
13
- def read(*args, &block)
14
- self.new.read(*args, &block)
15
- end
16
- end
17
-
18
12
  # valid options:
19
13
  # skip_first_row: true -- default = false
20
14
  # logger: Logger.new('/somewhere/file.log') -- default = Logger.new(STDOUT)
@@ -24,36 +18,35 @@ module Loady
24
18
  @logger = options.delete(:logger) || default_logger
25
19
 
26
20
  f = File.new(filename)
27
- f.readline if options.delete(:skip_first_row)
21
+ f.autoclose = true
22
+ f.gets if options.delete(:skip_first_row)
28
23
 
29
- begin
30
- while (line = f.readline)
31
- readline(line, options, &block)
32
- end
33
- rescue EOFError
34
- f.close
35
- rescue Exception => message
36
- @warning += 1
37
- @line_number += 1
38
- @logger.error "#{message} - at line #@line_number\n#{line}"
39
- end
24
+ f.each do |line|
25
+ readline line, options, &block
26
+ end
40
27
 
41
28
  @logger.info "Finished. Loaded #@success rows. #@warning unprocessed rows."
42
29
  end
43
30
 
31
+ class << self
32
+ def read(*args, &block)
33
+ self.new.read(*args, &block)
34
+ end
35
+ end
36
+
44
37
  private
45
38
 
46
39
  def readline(line, options)
47
40
  @line_number += 1
48
41
  row = AttributeArray.new(CSV.parse(line, options)[0])
49
42
 
50
- unless row.empty?
43
+ if row.any?
51
44
  yield row
52
45
  @success += 1
53
46
  end
54
- rescue Exception => message
47
+ rescue Exception => ex
55
48
  @warning += 1
56
- @logger.warn "#{message.to_s.gsub("line 1", "line #@line_number")}\n#{line}"
49
+ @logger.warn "#{ex.to_s.gsub("line 1", "line #@line_number")}\n#{line}"
57
50
  end
58
51
 
59
52
  def default_logger
data/lib/loady/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Loady
2
- VERSION = "0.7.1"
2
+ VERSION = "0.7.2"
3
3
  end
data/loady.gemspec CHANGED
@@ -1,6 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "loady/version"
2
+ require "./lib/loady/version"
4
3
 
5
4
  Gem::Specification.new do |s|
6
5
  s.name = "loady"
data/test/test_helper.rb CHANGED
@@ -1,3 +1,6 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+
1
4
  require 'test/unit'
2
5
  require 'shoulda-context'
3
6
  require 'mocha/setup'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: loady
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tee Parham
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-06 00:00:00.000000000 Z
11
+ date: 2013-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mocha
@@ -112,7 +112,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
112
  version: '0'
113
113
  requirements: []
114
114
  rubyforge_project:
115
- rubygems_version: 2.0.5
115
+ rubygems_version: 2.1.5
116
116
  signing_key:
117
117
  specification_version: 4
118
118
  summary: CSV file loader with simple logging
@@ -124,4 +124,3 @@ test_files:
124
124
  - test/test_csv_loader.rb
125
125
  - test/test_helper.rb
126
126
  - test/test_memory_logger.rb
127
- has_rdoc: