sheet_mapper 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -95,7 +95,7 @@ collection.cell(1, 2) => "foo"
95
95
  SheetMapper was created by [Nathan Esquenazi](http://github.com/nesquena) at Miso in 2012. The following users
96
96
  contributed to the project:
97
97
 
98
- * (Derek Lindahl)[https://github.com/dlindahl] - Added simple delegation to collections
98
+ * [Derek Lindahl](https://github.com/dlindahl) - Added simple delegation to collections
99
99
 
100
100
  ## Tasks
101
101
 
@@ -4,7 +4,8 @@ module SheetMapper
4
4
  class CollectionNotFound < StandardError; end
5
5
 
6
6
  class Collection < SimpleDelegator
7
- attr_reader :records, :worksheet
7
+ attr_reader :worksheet
8
+ attr_writer :mapper
8
9
 
9
10
  # spreadsheet is a SheetMapper::Spreadsheet
10
11
  # SheetMapper::Collection.new(@sheet, @work)
@@ -12,7 +13,12 @@ module SheetMapper
12
13
  @spreadsheet = spreadsheet
13
14
  @worksheet = worksheet
14
15
  @mapper = @spreadsheet.mapper
15
- @records = process_records!
16
+ end
17
+
18
+ # Returns the processed records
19
+ # @collection.records => [<SheetMapper::Base>, ...]
20
+ def records
21
+ @records ||= process_records!
16
22
  end
17
23
 
18
24
  # Returns an array of mapped records
@@ -38,11 +44,11 @@ module SheetMapper
38
44
  # Reload worksheet discarding changes not saved
39
45
  def reload
40
46
  @worksheet.reload
41
- @records = process_records!
47
+ @records = nil
42
48
  end
43
49
 
44
50
  def __getobj__
45
- @records
51
+ records
46
52
  end
47
53
 
48
54
  protected
@@ -58,4 +64,4 @@ module SheetMapper
58
64
  records
59
65
  end
60
66
  end
61
- end
67
+ end
@@ -1,3 +1,3 @@
1
1
  module SheetMapper
2
- VERSION = "0.1.2"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -29,7 +29,6 @@ describe "Spreadsheet" do
29
29
  @sheet = SheetMapper::Spreadsheet.new(:mapper => Object, :key => 'foo', :login => 'login', :password => 'pass')
30
30
  @work_stub = stub(:worksheet)
31
31
  @work_stub.expects(:title).returns("FOO")
32
- @work_stub.expects(:rows).returns([])
33
32
  @sheet_stub.expects(:worksheets).returns([@work_stub])
34
33
  @collection = @sheet.find_collection_by_title("foo")
35
34
  end
@@ -39,4 +38,4 @@ describe "Spreadsheet" do
39
38
  assert_equal @work_stub, @collection.worksheet
40
39
  end
41
40
  end # find_collection_by_title
42
- end # Spreadsheet
41
+ end # Spreadsheet
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sheet_mapper
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 1
9
8
  - 2
10
- version: 0.1.2
9
+ - 0
10
+ version: 0.2.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Nathan Esquenazi
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-06-12 00:00:00 Z
18
+ date: 2012-08-07 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: google-spreadsheet-ruby