easyio 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,6 +1,9 @@
1
1
  ## MAC OS
2
2
  .DS_Store
3
3
 
4
+ ## RubyMine
5
+ .idea/*
6
+
4
7
  ## TEXTMATE
5
8
  *.tmproj
6
9
  tmtags
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.2.0
data/easyio.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{easyio}
8
- s.version = "0.1.0"
8
+ s.version = "0.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Steve Eichert"]
12
- s.date = %q{2009-11-12}
12
+ s.date = %q{2010-10-26}
13
13
  s.description = %q{A gem for making IO tasks easy (at least for me)}
14
14
  s.email = %q{steve.eichert@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -31,7 +31,7 @@ Gem::Specification.new do |s|
31
31
  s.homepage = %q{http://github.com/eichert12/easyio}
32
32
  s.rdoc_options = ["--charset=UTF-8"]
33
33
  s.require_paths = ["lib"]
34
- s.rubygems_version = %q{1.3.5}
34
+ s.rubygems_version = %q{1.3.7}
35
35
  s.summary = %q{A gem for making IO tasks easy (at least for me)}
36
36
  s.test_files = [
37
37
  "test/helper.rb",
@@ -42,7 +42,7 @@ Gem::Specification.new do |s|
42
42
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
43
43
  s.specification_version = 3
44
44
 
45
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
45
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
46
46
  s.add_runtime_dependency(%q<fastercsv>, [">= 1.5.0"])
47
47
  s.add_runtime_dependency(%q<aws-s3>, [">= 0.6.2"])
48
48
  else
data/lib/easyio.rb CHANGED
@@ -18,7 +18,7 @@ class EasyIO
18
18
 
19
19
  def self.open_csv(file, options = {})
20
20
  FasterCSV.open(file, default_options(options)) { |csv| yield csv }
21
- end
21
+ end
22
22
 
23
23
  def self.file_source(options = {})
24
24
  options.delete(:source) || DefaultSource
@@ -44,6 +44,12 @@ class EasyIO
44
44
  end
45
45
  end
46
46
  end
47
+
48
+ def self.parse(string, options = {})
49
+ FasterCSV.parse(string, default_options(options)) do |row|
50
+ yield row
51
+ end
52
+ end
47
53
 
48
54
  def self.get_s3_bucket(options = {})
49
55
  options.delete(:bucket) || @default_bucket
data/test/test_easyio.rb CHANGED
@@ -26,4 +26,15 @@ class TestEasyio < Test::Unit::TestCase
26
26
  assert_equal EasyIO.get_s3_bucket, "foobar"
27
27
  end
28
28
  end
29
+
30
+ context "parse" do
31
+ should "yield each row" do
32
+ csv = "first,second,third\n1,2,3"
33
+ EasyIO.parse(csv) do |row|
34
+ assert_equal row[:first], "1"
35
+ assert_equal row[:second], "2"
36
+ assert_equal row[:third], "3"
37
+ end
38
+ end
39
+ end
29
40
  end
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easyio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ hash: 23
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 2
9
+ - 0
10
+ version: 0.2.0
5
11
  platform: ruby
6
12
  authors:
7
13
  - Steve Eichert
@@ -9,29 +15,41 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-11-12 00:00:00 -05:00
18
+ date: 2010-10-26 00:00:00 -04:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
22
  name: fastercsv
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
20
26
  requirements:
21
27
  - - ">="
22
28
  - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 1
32
+ - 5
33
+ - 0
23
34
  version: 1.5.0
24
- version:
35
+ type: :runtime
36
+ version_requirements: *id001
25
37
  - !ruby/object:Gem::Dependency
26
38
  name: aws-s3
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
30
42
  requirements:
31
43
  - - ">="
32
44
  - !ruby/object:Gem::Version
45
+ hash: 3
46
+ segments:
47
+ - 0
48
+ - 6
49
+ - 2
33
50
  version: 0.6.2
34
- version:
51
+ type: :runtime
52
+ version_requirements: *id002
35
53
  description: A gem for making IO tasks easy (at least for me)
36
54
  email: steve.eichert@gmail.com
37
55
  executables: []
@@ -62,21 +80,27 @@ rdoc_options:
62
80
  require_paths:
63
81
  - lib
64
82
  required_ruby_version: !ruby/object:Gem::Requirement
83
+ none: false
65
84
  requirements:
66
85
  - - ">="
67
86
  - !ruby/object:Gem::Version
87
+ hash: 3
88
+ segments:
89
+ - 0
68
90
  version: "0"
69
- version:
70
91
  required_rubygems_version: !ruby/object:Gem::Requirement
92
+ none: false
71
93
  requirements:
72
94
  - - ">="
73
95
  - !ruby/object:Gem::Version
96
+ hash: 3
97
+ segments:
98
+ - 0
74
99
  version: "0"
75
- version:
76
100
  requirements: []
77
101
 
78
102
  rubyforge_project:
79
- rubygems_version: 1.3.5
103
+ rubygems_version: 1.3.7
80
104
  signing_key:
81
105
  specification_version: 3
82
106
  summary: A gem for making IO tasks easy (at least for me)