rubyfromexcel 0.0.7 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/examples/checkpoints/checkpoint/checkpoint0.marshal +0 -0
- data/examples/checkpoints/checkpoint/checkpoint1.marshal +0 -0
- data/examples/checkpoints/checkpoint/checkpoint2.marshal +0 -0
- data/examples/checkpoints/checkpoint/checkpoint3.marshal +0 -0
- data/examples/checkpoints/checkpoint/checkpoint4.marshal +0 -0
- data/examples/checkpoints/checkpoint/checkpoint5.marshal +0 -0
- data/examples/ruby-versions/array-formulas-ruby/sheets/sheet1.rb +59 -0
- data/examples/ruby-versions/array-formulas-ruby/sheets/sheet2.rb +9 -0
- data/examples/ruby-versions/array-formulas-ruby/specs/sheet1_rspec.rb +156 -0
- data/examples/ruby-versions/array-formulas-ruby/specs/sheet2_rspec.rb +8 -0
- data/examples/ruby-versions/array-formulas-ruby/spreadsheet.rb +9 -0
- data/examples/ruby-versions/checkpoint-ruby/sheets/sheet1.rb +307 -0
- data/examples/ruby-versions/checkpoint-ruby/sheets/sheet2.rb +148 -0
- data/examples/ruby-versions/checkpoint-ruby/specs/sheet1_rspec.rb +884 -0
- data/examples/ruby-versions/checkpoint-ruby/specs/sheet2_rspec.rb +412 -0
- data/examples/ruby-versions/checkpoint-ruby/spreadsheet.rb +9 -0
- data/examples/ruby-versions/complex-test-ruby/sheets/sheet1.rb +305 -0
- data/examples/ruby-versions/complex-test-ruby/sheets/sheet2.rb +147 -0
- data/examples/ruby-versions/complex-test-ruby/specs/sheet1_rspec.rb +876 -0
- data/examples/ruby-versions/complex-test-ruby/specs/sheet2_rspec.rb +412 -0
- data/examples/ruby-versions/complex-test-ruby/spreadsheet.rb +9 -0
- data/examples/ruby-versions/namedReferenceTest-ruby/sheets/sheet1.rb +9 -0
- data/examples/ruby-versions/namedReferenceTest-ruby/sheets/sheet2.rb +8 -0
- data/examples/ruby-versions/namedReferenceTest-ruby/specs/sheet1_rspec.rb +16 -0
- data/examples/ruby-versions/namedReferenceTest-ruby/specs/sheet2_rspec.rb +16 -0
- data/examples/ruby-versions/namedReferenceTest-ruby/spreadsheet.rb +9 -0
- data/examples/ruby-versions/pruning-ruby/sheets/sheet1.rb +18 -0
- data/examples/ruby-versions/pruning-ruby/sheets/sheet2.rb +16 -0
- data/examples/ruby-versions/pruning-ruby/sheets/sheet3.rb +7 -0
- data/examples/ruby-versions/pruning-ruby/specs/sheet1_rspec.rb +28 -0
- data/examples/ruby-versions/pruning-ruby/specs/sheet2_rspec.rb +28 -0
- data/examples/ruby-versions/pruning-ruby/specs/sheet3_rspec.rb +8 -0
- data/examples/ruby-versions/pruning-ruby/spreadsheet.rb +9 -0
- data/examples/ruby-versions/sharedFormulaTest-ruby/sheets/sheet1.rb +15 -0
- data/examples/ruby-versions/sharedFormulaTest-ruby/specs/sheet1_rspec.rb +44 -0
- data/examples/ruby-versions/sharedFormulaTest-ruby/spreadsheet.rb +9 -0
- data/examples/ruby-versions/table-test-ruby/sheets/sheet1.rb +17 -0
- data/examples/ruby-versions/table-test-ruby/sheets/sheet2.rb +5 -0
- data/examples/ruby-versions/table-test-ruby/sheets/sheet3.rb +5 -0
- data/examples/ruby-versions/table-test-ruby/specs/sheet1_rspec.rb +20 -0
- data/examples/ruby-versions/table-test-ruby/specs/sheet2_rspec.rb +8 -0
- data/examples/ruby-versions/table-test-ruby/specs/sheet3_rspec.rb +8 -0
- data/examples/ruby-versions/table-test-ruby/spreadsheet.rb +9 -0
- data/examples/sheets/2050Model.xlsx +0 -0
- data/examples/unzipped-sheets/array-formulas/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/array-formulas/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/docProps/thumbnail.jpeg +0 -0
- data/examples/unzipped-sheets/array-formulas/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/sharedStrings.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/array-formulas/xl/worksheets/sheet2.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/checkpoint/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/charts/chart1.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/charts/chart2.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/comments1.xml +5 -0
- data/examples/unzipped-sheets/checkpoint/xl/comments2.xml +5 -0
- data/examples/unzipped-sheets/checkpoint/xl/drawings/_rels/drawing1.xml.rels +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/drawings/_rels/drawing2.xml.rels +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/drawings/drawing1.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/drawings/drawing2.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/drawings/vmlDrawing1.vml +47 -0
- data/examples/unzipped-sheets/checkpoint/xl/drawings/vmlDrawing2.vml +47 -0
- data/examples/unzipped-sheets/checkpoint/xl/sharedStrings.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/worksheets/_rels/sheet1.xml.rels +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/worksheets/_rels/sheet2.xml.rels +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/checkpoint/xl/worksheets/sheet2.xml +2 -0
- data/examples/unzipped-sheets/complex-test/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/complex-test/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/complex-test/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/complex-test/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/charts/chart1.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/charts/chart2.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/comments1.xml +5 -0
- data/examples/unzipped-sheets/complex-test/xl/comments2.xml +5 -0
- data/examples/unzipped-sheets/complex-test/xl/drawings/_rels/drawing1.xml.rels +2 -0
- data/examples/unzipped-sheets/complex-test/xl/drawings/_rels/drawing2.xml.rels +2 -0
- data/examples/unzipped-sheets/complex-test/xl/drawings/drawing1.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/drawings/drawing2.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/drawings/vmlDrawing1.vml +46 -0
- data/examples/unzipped-sheets/complex-test/xl/drawings/vmlDrawing2.vml +46 -0
- data/examples/unzipped-sheets/complex-test/xl/sharedStrings.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/worksheets/_rels/sheet1.xml.rels +2 -0
- data/examples/unzipped-sheets/complex-test/xl/worksheets/_rels/sheet2.xml.rels +2 -0
- data/examples/unzipped-sheets/complex-test/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/worksheets/sheet2.xml +2 -0
- data/examples/unzipped-sheets/complex-test/xl/worksheets/sheet3.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/docProps/thumbnail.jpeg +0 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/namedReferenceTest/xl/worksheets/sheet2.xml +2 -0
- data/examples/unzipped-sheets/pruning/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/pruning/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/pruning/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/pruning/docProps/thumbnail.jpeg +0 -0
- data/examples/unzipped-sheets/pruning/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/pruning/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/sharedStrings.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/tables/table1.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/worksheets/_rels/sheet2.xml.rels +2 -0
- data/examples/unzipped-sheets/pruning/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/worksheets/sheet2.xml +2 -0
- data/examples/unzipped-sheets/pruning/xl/worksheets/sheet3.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/docProps/thumbnail.jpeg +0 -0
- data/examples/unzipped-sheets/sharedFormulaTest/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/sharedFormulaTest/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/table-test/[Content_Types].xml +2 -0
- data/examples/unzipped-sheets/table-test/docProps/app.xml +2 -0
- data/examples/unzipped-sheets/table-test/docProps/core.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/_rels/workbook.xml.rels +2 -0
- data/examples/unzipped-sheets/table-test/xl/calcChain.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/printerSettings/printerSettings1.bin +0 -0
- data/examples/unzipped-sheets/table-test/xl/sharedStrings.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/styles.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/tables/table1.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/theme/theme1.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/workbook.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/worksheets/_rels/sheet1.xml.rels +2 -0
- data/examples/unzipped-sheets/table-test/xl/worksheets/sheet1.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/worksheets/sheet2.xml +2 -0
- data/examples/unzipped-sheets/table-test/xl/worksheets/sheet3.xml +2 -0
- data/lib/formulae/compile/formula_builder.rb +1 -0
- data/lib/formulae/parse/formula_peg.rb +3 -3
- data/lib/formulae/parse/formula_peg.txt +3 -3
- data/lib/formulae/run/excel_functions.rb +10 -3
- data/spec/excel_functions_spec.rb +21 -0
- data/spec/formula_peg_spec.rb +3 -0
- metadata +156 -3
|
@@ -0,0 +1,412 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
require_relative '../spreadsheet'
|
|
3
|
+
# OLD UK
|
|
4
|
+
describe 'Sheet2' do
|
|
5
|
+
def sheet2; $spreadsheet ||= Spreadsheet.new; $spreadsheet.sheet2; end
|
|
6
|
+
|
|
7
|
+
it 'cell d5 should equal 160.40945' do
|
|
8
|
+
sheet2.d5.should be_within(16.040945).of(160.40945)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
it 'cell e5 should equal 157.61832557' do
|
|
12
|
+
sheet2.e5.should be_within(15.761832557).of(157.61832557)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
it 'cell f5 should equal 154.87576670508201' do
|
|
16
|
+
sheet2.f5.should be_within(15.487576670508203).of(154.87576670508201)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
it 'cell g5 should equal 152.1809283644136' do
|
|
20
|
+
sheet2.g5.should be_within(15.218092836441361).of(152.1809283644136)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
it 'cell h5 should equal 149.5329802108728' do
|
|
24
|
+
sheet2.h5.should be_within(14.953298021087281).of(149.5329802108728)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it 'cell i5 should equal 146.93110635520364' do
|
|
28
|
+
sheet2.i5.should be_within(14.693110635520364).of(146.93110635520364)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
it 'cell j5 should equal 144.3745051046231' do
|
|
32
|
+
sheet2.j5.should be_within(14.43745051046231).of(144.3745051046231)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
it 'cell c6 should equal 134.16697500000004' do
|
|
36
|
+
sheet2.c6.should be_within(13.416697500000005).of(134.16697500000004)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
it 'cell d6 should equal 131.83246963500005' do
|
|
40
|
+
sheet2.d6.should be_within(13.183246963500006).of(131.83246963500005)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
it 'cell e6 should equal 129.53858466335103' do
|
|
44
|
+
sheet2.e6.should be_within(12.953858466335104).of(129.53858466335103)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
it 'cell f6 should equal 127.28461329020871' do
|
|
48
|
+
sheet2.f6.should be_within(12.728461329020872).of(127.28461329020871)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
it 'cell g6 should equal 125.06986101895905' do
|
|
52
|
+
sheet2.g6.should be_within(12.506986101895905).of(125.06986101895905)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
it 'cell h6 should equal 122.89364543722914' do
|
|
56
|
+
sheet2.h6.should be_within(12.289364543722915).of(122.89364543722914)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
it 'cell i6 should equal 120.75529600662136' do
|
|
60
|
+
sheet2.i6.should be_within(12.075529600662136).of(120.75529600662136)
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
it 'cell j6 should equal 118.65415385610618' do
|
|
64
|
+
sheet2.j6.should be_within(11.865415385610618).of(118.65415385610618)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
it 'cell l6 should equal 0.017400000000000082' do
|
|
68
|
+
sheet2.l6.should be_within(0.0017400000000000083).of(0.017400000000000082)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
it 'cell c7 should equal 297.41697500000004' do
|
|
72
|
+
sheet2.c7.should be_within(29.741697500000004).of(297.41697500000004)
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
it 'cell d7 should equal 292.24191963500004' do
|
|
76
|
+
sheet2.d7.should be_within(29.224191963500004).of(292.24191963500004)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
it 'cell e7 should equal 287.156910233351' do
|
|
80
|
+
sheet2.e7.should be_within(28.715691023335104).of(287.156910233351)
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
it 'cell f7 should equal 282.1603799952907' do
|
|
84
|
+
sheet2.f7.should be_within(28.216037999529075).of(282.1603799952907)
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
it 'cell g7 should equal 277.25078938337265' do
|
|
88
|
+
sheet2.g7.should be_within(27.725078938337266).of(277.25078938337265)
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
it 'cell h7 should equal 272.42662564810195' do
|
|
92
|
+
sheet2.h7.should be_within(27.242662564810196).of(272.42662564810195)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
it 'cell i7 should equal 267.686402361825' do
|
|
96
|
+
sheet2.i7.should be_within(26.768640236182502).of(267.686402361825)
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
it 'cell j7 should equal 263.0286589607293' do
|
|
100
|
+
sheet2.j7.should be_within(26.30286589607293).of(263.0286589607293)
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
it 'cell c9 should equal 2013.0' do
|
|
104
|
+
sheet2.c9.should be_within(201.3).of(2013.0)
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
it 'cell d9 should equal 2014.0' do
|
|
108
|
+
sheet2.d9.should be_within(201.4).of(2014.0)
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
it 'cell e9 should equal 2015.0' do
|
|
112
|
+
sheet2.e9.should be_within(201.5).of(2015.0)
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
it 'cell f9 should equal 2016.0' do
|
|
116
|
+
sheet2.f9.should be_within(201.60000000000002).of(2016.0)
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
it 'cell g9 should equal 2017.0' do
|
|
120
|
+
sheet2.g9.should be_within(201.70000000000002).of(2017.0)
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
it 'cell h9 should equal 2018.0' do
|
|
124
|
+
sheet2.h9.should be_within(201.8).of(2018.0)
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
it 'cell i9 should equal 2019.0' do
|
|
128
|
+
sheet2.i9.should be_within(201.9).of(2019.0)
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
it 'cell j9 should equal 2020.0' do
|
|
132
|
+
sheet2.j9.should be_within(202.0).of(2020.0)
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
it 'cell d10 should equal 1.0' do
|
|
136
|
+
sheet2.d10.should be_within(0.1).of(1.0)
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
it 'cell e10 should equal 1.0' do
|
|
140
|
+
sheet2.e10.should be_within(0.1).of(1.0)
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
it 'cell f10 should equal 1.0' do
|
|
144
|
+
sheet2.f10.should be_within(0.1).of(1.0)
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
it 'cell g10 should equal 1.0' do
|
|
148
|
+
sheet2.g10.should be_within(0.1).of(1.0)
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
it 'cell h10 should equal 1.0' do
|
|
152
|
+
sheet2.h10.should be_within(0.1).of(1.0)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
it 'cell i10 should equal 1.0' do
|
|
156
|
+
sheet2.i10.should be_within(0.1).of(1.0)
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
it 'cell j10 should equal 1.0' do
|
|
160
|
+
sheet2.j10.should be_within(0.1).of(1.0)
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
it 'cell d11 should equal 0.3142857142857143' do
|
|
164
|
+
sheet2.d11.should be_within(0.03142857142857143).of(0.3142857142857143)
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
it 'cell e11 should equal 0.4285714285714286' do
|
|
168
|
+
sheet2.e11.should be_within(0.042857142857142864).of(0.4285714285714286)
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
it 'cell f11 should equal 0.5428571428571429' do
|
|
172
|
+
sheet2.f11.should be_within(0.0542857142857143).of(0.5428571428571429)
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
it 'cell g11 should equal 0.6571428571428573' do
|
|
176
|
+
sheet2.g11.should be_within(0.06571428571428573).of(0.6571428571428573)
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
it 'cell h11 should equal 0.7714285714285716' do
|
|
180
|
+
sheet2.h11.should be_within(0.07714285714285717).of(0.7714285714285716)
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
it 'cell i11 should equal 0.8857142857142859' do
|
|
184
|
+
sheet2.i11.should be_within(0.08857142857142859).of(0.8857142857142859)
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
it 'cell l11 should equal 0.1142857142857143' do
|
|
188
|
+
sheet2.l11.should be_within(0.01142857142857143).of(0.1142857142857143)
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
it 'cell c12 should equal 0.6391141426947805' do
|
|
192
|
+
sheet2.c12.should be_within(0.06391141426947805).of(0.6391141426947805)
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
it 'cell d12 should equal 0.6906692651669547' do
|
|
196
|
+
sheet2.d12.should be_within(0.06906692651669548).of(0.6906692651669547)
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
it 'cell e12 should equal 0.742224387639129' do
|
|
200
|
+
sheet2.e12.should be_within(0.0742224387639129).of(0.742224387639129)
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
it 'cell f12 should equal 0.7937795101113032' do
|
|
204
|
+
sheet2.f12.should be_within(0.07937795101113032).of(0.7937795101113032)
|
|
205
|
+
end
|
|
206
|
+
|
|
207
|
+
it 'cell g12 should equal 0.8453346325834775' do
|
|
208
|
+
sheet2.g12.should be_within(0.08453346325834776).of(0.8453346325834775)
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
it 'cell h12 should equal 0.8968897550556517' do
|
|
212
|
+
sheet2.h12.should be_within(0.08968897550556518).of(0.8968897550556517)
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
it 'cell i12 should equal 0.9484448775278258' do
|
|
216
|
+
sheet2.i12.should be_within(0.09484448775278259).of(0.9484448775278258)
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
it 'cell j12 should equal 1.0' do
|
|
220
|
+
sheet2.j12.should be_within(0.1).of(1.0)
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
it 'cell c14 should equal 2013.0' do
|
|
224
|
+
sheet2.c14.should be_within(201.3).of(2013.0)
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
it 'cell d14 should equal 2014.0' do
|
|
228
|
+
sheet2.d14.should be_within(201.4).of(2014.0)
|
|
229
|
+
end
|
|
230
|
+
|
|
231
|
+
it 'cell e14 should equal 2015.0' do
|
|
232
|
+
sheet2.e14.should be_within(201.5).of(2015.0)
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
it 'cell f14 should equal 2016.0' do
|
|
236
|
+
sheet2.f14.should be_within(201.60000000000002).of(2016.0)
|
|
237
|
+
end
|
|
238
|
+
|
|
239
|
+
it 'cell g14 should equal 2017.0' do
|
|
240
|
+
sheet2.g14.should be_within(201.70000000000002).of(2017.0)
|
|
241
|
+
end
|
|
242
|
+
|
|
243
|
+
it 'cell h14 should equal 2018.0' do
|
|
244
|
+
sheet2.h14.should be_within(201.8).of(2018.0)
|
|
245
|
+
end
|
|
246
|
+
|
|
247
|
+
it 'cell i14 should equal 2019.0' do
|
|
248
|
+
sheet2.i14.should be_within(201.9).of(2019.0)
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
it 'cell j14 should equal 2020.0' do
|
|
252
|
+
sheet2.j14.should be_within(202.0).of(2020.0)
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
it 'cell d15 should equal 20.0' do
|
|
256
|
+
sheet2.d15.should be_within(2.0).of(20.0)
|
|
257
|
+
end
|
|
258
|
+
|
|
259
|
+
it 'cell e15 should equal 20.0' do
|
|
260
|
+
sheet2.e15.should be_within(2.0).of(20.0)
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
it 'cell f15 should equal 20.0' do
|
|
264
|
+
sheet2.f15.should be_within(2.0).of(20.0)
|
|
265
|
+
end
|
|
266
|
+
|
|
267
|
+
it 'cell g15 should equal 20.0' do
|
|
268
|
+
sheet2.g15.should be_within(2.0).of(20.0)
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
it 'cell h15 should equal 20.0' do
|
|
272
|
+
sheet2.h15.should be_within(2.0).of(20.0)
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
it 'cell i15 should equal 20.0' do
|
|
276
|
+
sheet2.i15.should be_within(2.0).of(20.0)
|
|
277
|
+
end
|
|
278
|
+
|
|
279
|
+
it 'cell j15 should equal 20.0' do
|
|
280
|
+
sheet2.j15.should be_within(2.0).of(20.0)
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
it 'cell c17 should equal 2013.0' do
|
|
284
|
+
sheet2.c17.should be_within(201.3).of(2013.0)
|
|
285
|
+
end
|
|
286
|
+
|
|
287
|
+
it 'cell d17 should equal 2014.0' do
|
|
288
|
+
sheet2.d17.should be_within(201.4).of(2014.0)
|
|
289
|
+
end
|
|
290
|
+
|
|
291
|
+
it 'cell e17 should equal 2015.0' do
|
|
292
|
+
sheet2.e17.should be_within(201.5).of(2015.0)
|
|
293
|
+
end
|
|
294
|
+
|
|
295
|
+
it 'cell f17 should equal 2016.0' do
|
|
296
|
+
sheet2.f17.should be_within(201.60000000000002).of(2016.0)
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
it 'cell g17 should equal 2017.0' do
|
|
300
|
+
sheet2.g17.should be_within(201.70000000000002).of(2017.0)
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
it 'cell h17 should equal 2018.0' do
|
|
304
|
+
sheet2.h17.should be_within(201.8).of(2018.0)
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
it 'cell i17 should equal 2019.0' do
|
|
308
|
+
sheet2.i17.should be_within(201.9).of(2019.0)
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
it 'cell j17 should equal 2020.0' do
|
|
312
|
+
sheet2.j17.should be_within(202.0).of(2020.0)
|
|
313
|
+
end
|
|
314
|
+
|
|
315
|
+
it 'cell c18 should equal 3.265' do
|
|
316
|
+
sheet2.c18.should be_within(0.3265).of(3.265)
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
it 'cell d18 should equal 3.208189' do
|
|
320
|
+
sheet2.d18.should be_within(0.3208189).of(3.208189)
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
it 'cell e18 should equal 3.1523665114' do
|
|
324
|
+
sheet2.e18.should be_within(0.31523665114).of(3.1523665114)
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
it 'cell f18 should equal 3.09751533410164' do
|
|
328
|
+
sheet2.f18.should be_within(0.30975153341016404).of(3.09751533410164)
|
|
329
|
+
end
|
|
330
|
+
|
|
331
|
+
it 'cell g18 should equal 3.043618567288272' do
|
|
332
|
+
sheet2.g18.should be_within(0.3043618567288272).of(3.043618567288272)
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
it 'cell h18 should equal 2.990659604217456' do
|
|
336
|
+
sheet2.h18.should be_within(0.2990659604217456).of(2.990659604217456)
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
it 'cell i18 should equal 2.9386221271040727' do
|
|
340
|
+
sheet2.i18.should be_within(0.2938622127104073).of(2.9386221271040727)
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
it 'cell j18 should equal 2.8874901020924617' do
|
|
344
|
+
sheet2.j18.should be_within(0.2887490102092462).of(2.8874901020924617)
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
it 'cell c19 should equal 0.5366679000000002' do
|
|
348
|
+
sheet2.c19.should be_within(0.05366679000000002).of(0.5366679000000002)
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
it 'cell d19 should equal 0.8286612377057146' do
|
|
352
|
+
sheet2.d19.should be_within(0.08286612377057147).of(0.8286612377057146)
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
it 'cell e19 should equal 1.110330725685866' do
|
|
356
|
+
sheet2.e19.should be_within(0.11103307256858662).of(1.110330725685866)
|
|
357
|
+
end
|
|
358
|
+
|
|
359
|
+
it 'cell f19 should equal 1.3819472300079803' do
|
|
360
|
+
sheet2.f19.should be_within(0.13819472300079802).of(1.3819472300079803)
|
|
361
|
+
end
|
|
362
|
+
|
|
363
|
+
it 'cell g19 should equal 1.6437753162491764' do
|
|
364
|
+
sheet2.g19.should be_within(0.16437753162491764).of(1.6437753162491764)
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
it 'cell h19 should equal 1.8960733867458215' do
|
|
368
|
+
sheet2.h19.should be_within(0.18960733867458215).of(1.8960733867458215)
|
|
369
|
+
end
|
|
370
|
+
|
|
371
|
+
it 'cell i19 should equal 2.1390938149744363' do
|
|
372
|
+
sheet2.i19.should be_within(0.21390938149744365).of(2.1390938149744363)
|
|
373
|
+
end
|
|
374
|
+
|
|
375
|
+
it 'cell j19 should equal 2.3730830771221236' do
|
|
376
|
+
sheet2.j19.should be_within(0.23730830771221237).of(2.3730830771221236)
|
|
377
|
+
end
|
|
378
|
+
|
|
379
|
+
it 'cell c20 should equal 3.8016679' do
|
|
380
|
+
sheet2.c20.should be_within(0.38016679000000003).of(3.8016679)
|
|
381
|
+
end
|
|
382
|
+
|
|
383
|
+
it 'cell d20 should equal 4.036850237705714' do
|
|
384
|
+
sheet2.d20.should be_within(0.4036850237705714).of(4.036850237705714)
|
|
385
|
+
end
|
|
386
|
+
|
|
387
|
+
it 'cell e20 should equal 4.262697237085867' do
|
|
388
|
+
sheet2.e20.should be_within(0.4262697237085867).of(4.262697237085867)
|
|
389
|
+
end
|
|
390
|
+
|
|
391
|
+
it 'cell f20 should equal 4.479462564109621' do
|
|
392
|
+
sheet2.f20.should be_within(0.44794625641096214).of(4.479462564109621)
|
|
393
|
+
end
|
|
394
|
+
|
|
395
|
+
it 'cell g20 should equal 4.687393883537449' do
|
|
396
|
+
sheet2.g20.should be_within(0.4687393883537449).of(4.687393883537449)
|
|
397
|
+
end
|
|
398
|
+
|
|
399
|
+
it 'cell h20 should equal 4.886732990963277' do
|
|
400
|
+
sheet2.h20.should be_within(0.48867329909632773).of(4.886732990963277)
|
|
401
|
+
end
|
|
402
|
+
|
|
403
|
+
it 'cell i20 should equal 5.077715942078508' do
|
|
404
|
+
sheet2.i20.should be_within(0.5077715942078508).of(5.077715942078508)
|
|
405
|
+
end
|
|
406
|
+
|
|
407
|
+
it 'cell j20 should equal 5.260573179214585' do
|
|
408
|
+
sheet2.j20.should be_within(0.5260573179214586).of(5.260573179214585)
|
|
409
|
+
end
|
|
410
|
+
|
|
411
|
+
end
|
|
412
|
+
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
require_relative '../spreadsheet'
|
|
3
|
+
# Sheet1
|
|
4
|
+
describe 'Sheet1' do
|
|
5
|
+
def sheet1; $spreadsheet ||= Spreadsheet.new; $spreadsheet.sheet1; end
|
|
6
|
+
|
|
7
|
+
it 'cell a4 should equal 1.0' do
|
|
8
|
+
sheet1.a4.should be_within(0.1).of(1.0)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
it 'cell a5 should equal 2.0' do
|
|
12
|
+
sheet1.a5.should be_within(0.2).of(2.0)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
end
|
|
16
|
+
|