test/test_roo.rb in roo-0.7.0 vs test/test_roo.rb in roo-0.8.0
- old
+ new
@@ -18,32 +18,68 @@
yield
end
end
DISPLAY_LOG = false
-DB_LOG = false
+DB_LOG = true
if DB_LOG
- require 'active_record'
+ # gem 'activerecord', '< 2.0.0'
+ # require 'activerecord'
+ require_gem 'activerecord', '< 2.0.0'
+ #require 'activerecord'
end
include FileUtils
if DB_LOG
def activerecord_connect
ActiveRecord::Base.establish_connection(:adapter => "mysql",
- :database => "test_runs",
- :host => "localhost",
- :username => "root",
- :socket => "/var/run/mysqld/mysqld.sock")
+ :database => "test_runs",
+ :host => "localhost",
+ :username => "root",
+ :socket => "/var/run/mysqld/mysqld.sock")
end
class Testrun < ActiveRecord::Base
end
end
class Test::Unit::TestCase
+ def key_of(spreadsheetname)
+ begin
+ return {
+ 'numbers1' => "o10837434939102457526.4784396906364855777",
+ 'borders' => "o10837434939102457526.664868920231926255",
+ 'simple_spreadsheet' => "ptu6bbahNZpYe-L1vEBmgGA",
+ 'testnichtvorhandenBibelbund.ods' => "invalidkeyforanyspreadsheet", # !!! intentionally false key
+ "only_one_sheet" => "o10837434939102457526.762705759906130135",
+ "write.me" => 'ptu6bbahNZpY0N0RrxQbWdw&hl',
+ 'formula' => 'o10837434939102457526.3022866619437760118',
+ }[spreadsheetname]
+ rescue
+ raise "unknown spreadsheetname: #{spreadsheetname}"
+ end
+
+if false
+ case spreadsheetname
+ when 'numbers1'
+ return "o10837434939102457526.4784396906364855777"
+ when 'borders'
+ return "o10837434939102457526.664868920231926255"
+ when 'simple_spreadsheet'
+ return "o1087434939102457526.1774445811568867358"
+ when 'testnichtvorhandenBibelbund.ods'
+ return "invalidkeyforanyspreadsheet" # !!! intentionally false key
+ when "only_one_sheet"
+ return "o10837434939102457526.762705759906130135"
+ else
+ raise "unknown spreadsheetname: #{spreadsheetname}"
+ end
+ end # false
+ end
+
if DB_LOG
if ! (defined?(@connected) and @connected)
activerecord_connect
else
@connected = true
@@ -66,29 +102,34 @@
# 'start' => t1,
# 'duration' => t2-t1}
# open('test_runs.yml','a') { |f| YAML.dump(record, f) }
# #--
if DB_LOG
- domain = Testrun.create(:class => self.class.to_s,
- :test => @method_name,
- :start => t1,
- :duration => t2-t1
+ # p self.class.to_s
+ #p @method_name
+ #p t1
+ #p t2-t1
+ domain = Testrun.create(
+ :class => self.class.to_s,
+ :test => @method_name,
+ :start => t1,
+ :duration => t2-t1
)
end
end
end
class TestRoo < Test::Unit::TestCase
- OPENOFFICE = true # do Openoffice-Spreadsheet Tests?
- EXCEL = true # do Excel Tests?
- GOOGLE = false # do Google-Spreadsheet Tests?
+ OPENOFFICE = true # do Openoffice-Spreadsheet Tests?
+ EXCEL = true # do Excel Tests?
+ GOOGLE = true # do Google-Spreadsheet Tests?
OPENOFFICEWRITE = false # experimental: write access with OO-Documents
ONLINE = false
LONG_RUN = false
- GLOBAL_TIMEOUT = 10*60 # seconds
+ GLOBAL_TIMEOUT = 2*12*60 # seconds
# helper method
def after(d)
if DateTime.now > d
@@ -102,69 +143,117 @@
yield
end
end
def setup
- if GOOGLE
- after Date.new(2007,8,15) do
- @goo = Google.new(ENV['GOOGLE_MAIL'],
- ENV['GOOGLE_PASSWORD'],
- ENV['GOOGLE_KEY'],"Roo Testspreadheet")
- end
- end
if DISPLAY_LOG
puts "GLOBAL_TIMEOUT = #{GLOBAL_TIMEOUT}"
end
end
+ def test_date
+ assert Google.date?("21/11/1962")
+ assert_equal Date.new(1962,11,21), Google.to_date("21/11/1962")
+
+ assert !Google.date?("21")
+ assert_nil Google.to_date("21")
+
+ assert !Google.date?("21/11")
+ assert_nil Google.to_date("21/11")
+
+ assert !Google.date?("Mittwoch/21/1961")
+ assert_nil Google.to_date("Mittwoch/21/1961")
+ end
+
+ def test_classes
+ if OPENOFFICE
+ oo = Openoffice.new(File.join("test","numbers1.ods"))
+ assert_kind_of Openoffice, oo
+ end
+ if EXCEL
+ oo = Excel.new(File.join("test","numbers1.xls"))
+ assert_kind_of Excel, oo
+ end
+ if GOOGLE
+ oo = Google.new(key_of("numbers1"))
+ assert_kind_of Google, oo
+ end
+ end
+
def test_letters
- assert_equal 1, Openoffice.letter_to_number('A')
- assert_equal 1, Openoffice.letter_to_number('a')
- assert_equal 2, Openoffice.letter_to_number('B')
- assert_equal 26, Openoffice.letter_to_number('Z')
- assert_equal 27, Openoffice.letter_to_number('AA')
- assert_equal 27, Openoffice.letter_to_number('aA')
- assert_equal 27, Openoffice.letter_to_number('Aa')
- assert_equal 27, Openoffice.letter_to_number('aa')
+ assert_equal 1, GenericSpreadsheet.letter_to_number('A')
+ assert_equal 1, GenericSpreadsheet.letter_to_number('a')
+ assert_equal 2, GenericSpreadsheet.letter_to_number('B')
+ assert_equal 26, GenericSpreadsheet.letter_to_number('Z')
+ assert_equal 27, GenericSpreadsheet.letter_to_number('AA')
+ assert_equal 27, GenericSpreadsheet.letter_to_number('aA')
+ assert_equal 27, GenericSpreadsheet.letter_to_number('Aa')
+ assert_equal 27, GenericSpreadsheet.letter_to_number('aa')
end
- def test_sheets
+ def DONT_test_simple_google
+ if GOOGLE
+ go = Google.new("egal")
+ assert_equal "42", go.cell(1,1)
+ end
+ end
+
+ def test_sheets_openoffice
if OPENOFFICE
oo = Openoffice.new(File.join("test","numbers1.ods"))
assert_equal ["Tabelle1","Name of Sheet 2","Sheet3","Sheet4","Sheet5"], oo.sheets
assert_raise(RangeError) {
oo.default_sheet = "no_sheet"
}
assert_raise(TypeError) {
oo.default_sheet = [1,2,3]
}
+
+ oo.sheets.each { |sh|
+ oo.default_sheet = sh
+ assert_equal sh, oo.default_sheet
+ }
end
+ end
+
+ def test_sheets_excel
if EXCEL
oo = Excel.new(File.join("test","numbers1.xls"))
assert_equal ["Tabelle1","Name of Sheet 2","Sheet3","Sheet4","Sheet5"], oo.sheets
assert_raise(RangeError) {
oo.default_sheet = "no_sheet"
}
assert_raise(TypeError) {
oo.default_sheet = [1,2,3]
}
+ oo.sheets.each { |sh|
+ oo.default_sheet = sh
+ assert_equal sh, oo.default_sheet
+ }
end
+ end
+
+ def test_sheets_google
if GOOGLE
- after Date.new(2007,6,10) do
- assert_equal "Testspreadsheet Roo", @goo.title
+ oo = Google.new(key_of("numbers1"))
+ assert_equal ["Tabelle1","Name of Sheet 2","Sheet3","Sheet4","Sheet5"], oo.sheets
+ after Date.new(2007,12,15) do
+ assert_raise(RangeError) {
+ oo.default_sheet = "no_sheet"
+ }
+ assert_raise(TypeError) {
+ oo.default_sheet = [1,2,3]
+ }
end
- assert_equal ["Sheet eins","Sheet zwei","Sheet drei"], @goo.sheets
- assert_raise(RangeError) {
- oo.default_sheet = "no_sheet"
+ oo.sheets.each { |sh|
+ oo.default_sheet = sh
+ assert_equal sh, oo.default_sheet
}
- assert_raise(TypeError) {
- oo.default_sheet = [1,2,3]
- }
end
end
- def test_cell
+ def test_cell_openoffice
if OPENOFFICE
oo = Openoffice.new(File.join("test","numbers1.ods"))
oo.default_sheet = oo.sheets.first
assert_equal 1, oo.cell(1,1)
assert_equal 2, oo.cell(1,2)
@@ -197,11 +286,13 @@
# assert_equal "date", oo.celltype(5,1)
assert_equal :date, oo.celltype(5,1)
assert_equal Date.new(1961,11,21), oo.cell(5,1)
assert_equal "1961-11-21", oo.cell(5,1).to_s
end
+ end
+ def test_cell_excel
if EXCEL
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = oo.sheets.first
assert_equal 1, oo.cell(1,1)
assert_equal 2, oo.cell(1,2)
@@ -234,54 +325,48 @@
# assert_equal "date", oo.celltype(5,1)
assert_equal :date, oo.celltype(5,1)
assert_equal Date.new(1961,11,21), oo.cell(5,1)
assert_equal "1961-11-21", oo.cell(5,1).to_s
end
+ end
+ def test_cell_google
if GOOGLE
- @goo.default_sheet = 1 # @goo.sheets.first
- assert_equal 1, @goo.cell(1,1).to_i
- assert_equal 2, @goo.cell(1,2).to_i
- assert_equal 3, @goo.cell(1,3).to_i
- assert_equal 4, @goo.cell(1,4).to_i
- assert_equal 5, @goo.cell(2,1).to_i
- assert_equal 6, @goo.cell(2,2).to_i
- assert_equal 7, @goo.cell(2,3).to_i
- assert_equal 8, @goo.cell(2,4).to_i
- assert_equal 9, @goo.cell(2,5).to_i
- assert_equal "test", @goo.cell(2,6)
- # assert_equal "string", @goo.celltype(2,6)
- assert_equal :string, @goo.celltype(2,6)
- assert_equal 11, @goo.cell(2,7).to_i
- after Date.new(2007,6,15) do
- # assert_equal "float", @goo.celltype(2,7)
- assert_equal :float, @goo.celltype(2,7)
- end
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 1, oo.cell(1,1)
+ assert_equal 2, oo.cell(1,2)
+ assert_equal 3, oo.cell(1,3)
+ assert_equal 4, oo.cell(1,4)
+ assert_equal 5, oo.cell(2,1)
+ assert_equal 6, oo.cell(2,2)
+ assert_equal 7, oo.cell(2,3)
+ assert_equal 8, oo.cell(2,4)
+ assert_equal 9, oo.cell(2,5)
+ assert_equal "test", oo.cell(2,6)
+ # assert_equal "string", oo.celltype(2,6)
+ assert_equal :string, oo.celltype(2,6)
+ assert_equal 11, oo.cell(2,7)
+ # assert_equal "float", oo.celltype(2,7)
+ assert_equal :float, oo.celltype(2,7), "Inhalt: --#{oo.cell(2,7)}--"
- assert_equal 10, @goo.cell(4,1).to_i
- assert_equal 11, @goo.cell(4,2).to_i
- assert_equal 12, @goo.cell(4,3).to_i
- assert_equal 13, @goo.cell(4,4).to_i
- assert_equal 14, @goo.cell(4,5).to_i
+ assert_equal 10, oo.cell(4,1)
+ assert_equal 11, oo.cell(4,2)
+ assert_equal 12, oo.cell(4,3)
+ assert_equal 13, oo.cell(4,4)
+ assert_equal 14, oo.cell(4,5)
- assert_equal 10, @goo.cell(4,'A').to_i
- assert_equal 11, @goo.cell(4,'B').to_i
- assert_equal 12, @goo.cell(4,'C').to_i
- assert_equal 13, @goo.cell(4,'D').to_i
- assert_equal 14, @goo.cell(4,'E').to_i
+ assert_equal 10, oo.cell(4,'A')
+ assert_equal 11, oo.cell(4,'B')
+ assert_equal 12, oo.cell(4,'C')
+ assert_equal 13, oo.cell(4,'D')
+ assert_equal 14, oo.cell(4,'E')
- after Date.new(2007,6,15) do
- # assert_equal "date", @goo.celltype(5,1)
- assert_equal :date, @goo.celltype(5,1)
- end
- after Date.new(2007,6,15) do
- assert_equal Date.new(1961,11,21), @goo.cell(5,1)
- assert_equal "1961-11-21", @goo.cell(5,1).to_s
- end
- before Date.new(2007,6,15) do
- assert_equal "21/11/1961", @goo.cell(5,1)
- end
+ # assert_equal "date", oo.celltype(5,1)
+ assert_equal :date, oo.celltype(5,1)
+ assert_equal Date.new(1961,11,21), oo.cell(5,1)
+ assert_equal "1961-11-21", oo.cell(5,1).to_s
end # GOOGLE
end
def test_celltype
###
@@ -294,11 +379,11 @@
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = oo.sheets.first
assert_equal :string, oo.celltype(2,6)
end
if GOOGLE
- oo = Google.new(File.join("test","nxxxxxxxxxxxxxumbers1.xls"))
+ oo = Google.new(key_of("numbers1"))
oo.default_sheet = oo.sheets.first
assert_equal :string, oo.celltype(2,6)
end
end
@@ -354,25 +439,32 @@
assert_equal "thisisa11", oo.cell('a',11)
#assert_equal "lulua", oo.cell('b',10)
end
if GOOGLE
- @goo.default_sheet = 1 # @goo.sheets.first
- assert_equal "tata", @goo.cell(6,1)
- assert_equal "tata", @goo.cell(6,'A')
- assert_equal "tata", @goo.cell('A',6)
- assert_equal "tata", @goo.cell(6,'a')
- assert_equal "tata", @goo.cell('a',6)
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal "tata", oo.cell(6,1)
+ assert_equal "tata", oo.cell(6,'A')
+ assert_equal "tata", oo.cell('A',6)
+ assert_equal "tata", oo.cell(6,'a')
+ assert_equal "tata", oo.cell('a',6)
- assert_equal "thisisc8", @goo.cell(8,3)
- assert_equal "thisisc8", @goo.cell(8,'C')
- assert_equal "thisisc8", @goo.cell('C',8)
- assert_equal "thisisc8", @goo.cell(8,'c')
- assert_equal "thisisc8", @goo.cell('c',8)
+ assert_raise(ArgumentError) {
+ assert_equal "tata", oo.cell('a','f')
+ }
+ assert_raise(ArgumentError) {
+ assert_equal "tata", oo.cell('f','a')
+ }
+ assert_equal "thisisc8", oo.cell(8,3)
+ assert_equal "thisisc8", oo.cell(8,'C')
+ assert_equal "thisisc8", oo.cell('C',8)
+ assert_equal "thisisc8", oo.cell(8,'c')
+ assert_equal "thisisc8", oo.cell('c',8)
- assert_equal "thisisd9", @goo.cell('d',9)
- assert_equal "thisisa11", @goo.cell('a',11)
+ assert_equal "thisisd9", oo.cell('d',9)
+ assert_equal "thisisa11", oo.cell('a',11)
end
end
# Version of the (XML) office document
# please note that "1.0" is returned even if it was created with OpenOffice V. 2.0
@@ -381,21 +473,18 @@
oo = Openoffice.new(File.join("test","numbers1.ods"))
assert_equal "1.0", oo.officeversion
if EXCEL
# excel does not have a officeversion
end
- #-- Google
if GOOGLE
- after Date.new(2007,6,15) do
- assert_equal "1.0", @goo.officeversion
- end
+ # google does not have a officeversion
end
end
+#TODO: inkonsequente Lieferung Fixnum/Float
def test_rows
if OPENOFFICE
- #-- OpenOffice
oo = Openoffice.new(File.join("test","numbers1.ods"))
oo.default_sheet = oo.sheets.first
assert_equal 41, oo.cell('a',12)
assert_equal 42, oo.cell('b',12)
assert_equal 43, oo.cell('c',12)
@@ -423,38 +512,34 @@
assert_equal "zweiundvierzig", oo.cell('b',16)
assert_equal "dreiundvierzig", oo.cell('c',16)
assert_equal "vierundvierzig", oo.cell('d',16)
assert_equal "fuenfundvierzig", oo.cell('e',16)
assert_equal ["einundvierzig",
- "zweiundvierzig",
- "dreiundvierzig",
- "vierundvierzig",
- "fuenfundvierzig"], oo.row(16)
+ "zweiundvierzig",
+ "dreiundvierzig",
+ "vierundvierzig",
+ "fuenfundvierzig"], oo.row(16)
end
- after Date.new(2007,6,17) do
- #-- GOOGLE
- if GOOGLE
- oo = Google.new(File.join("test","numbers1.xls"))
- oo.default_sheet = 1 # oo.sheets.first
- assert_equal 41, oo.cell('a',12)
- assert_equal 42, oo.cell('b',12)
- assert_equal 43, oo.cell('c',12)
- assert_equal 44, oo.cell('d',12)
- assert_equal 45, oo.cell('e',12)
- assert_equal [41.0,42.0,43.0,44.0,45.0], oo.row(12)
- assert_equal "einundvierzig", oo.cell('a',16)
- assert_equal "zweiundvierzig", oo.cell('b',16)
- assert_equal "dreiundvierzig", oo.cell('c',16)
- assert_equal "vierundvierzig", oo.cell('d',16)
- assert_equal "fuenfundvierzig", oo.cell('e',16)
- assert_equal "xxxfuenfundvierzig", oo.cell('e',16)
- assert_equal ["einundvierzig",
+ if GOOGLE
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 41, oo.cell('a',12)
+ assert_equal 42, oo.cell('b',12)
+ assert_equal 43, oo.cell('c',12)
+ assert_equal 44, oo.cell('d',12)
+ assert_equal 45, oo.cell('e',12)
+ assert_equal [41,42,43,44,45], oo.row(12)
+ assert_equal "einundvierzig", oo.cell('a',16)
+ assert_equal "zweiundvierzig", oo.cell('b',16)
+ assert_equal "dreiundvierzig", oo.cell('c',16)
+ assert_equal "vierundvierzig", oo.cell('d',16)
+ assert_equal "fuenfundvierzig", oo.cell('e',16)
+ assert_equal ["einundvierzig",
"zweiundvierzig",
"dreiundvierzig",
"vierundvierzig",
"fuenfundvierzig"], oo.row(16)
- end
end
end
def test_last_row
if OPENOFFICE
@@ -466,13 +551,13 @@
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = oo.sheets.first
assert_equal 18, oo.last_row
end
if GOOGLE
- @goo.default_sheet = @goo.sheets.first
- assert_equal 18, @goo.last_row
- assert_equal "xxx", @goo.to_s, @goo.to_s
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 18, oo.last_row
end
end
def test_last_column
if OPENOFFICE
@@ -485,104 +570,118 @@
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = oo.sheets.first
assert_equal 7, oo.last_column
end
if GOOGLE
- #-- Google
- @goo.default_sheet = @goo.sheets.first
- assert_equal 7, @goo.last_column
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 7, oo.last_column
end
end
def test_last_column_as_letter
- #-- OpenOffice
- oo = Openoffice.new(File.join("test","numbers1.ods"))
- oo.default_sheet = oo.sheets.first
- assert_equal 'G', oo.last_column_as_letter
+ if OPENOFFICE
+ oo = Openoffice.new(File.join("test","numbers1.ods"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 'G', oo.last_column_as_letter
+ end
if EXCEL
#-- Excel
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = 1 # oo.sheets.first
assert_equal 'G', oo.last_column_as_letter
end
if GOOGLE
- #-- Google
- @goo.default_sheet = @goo.sheets.first
- assert_equal 'G', @goo.last_column_as_letter
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 'G', oo.last_column_as_letter
end
end
def test_first_row
- #-- OpenOffice
- oo = Openoffice.new(File.join("test","numbers1.ods"))
- oo.default_sheet = oo.sheets.first
- assert_equal 1, oo.first_row
+ if OPENOFFICE
+ oo = Openoffice.new(File.join("test","numbers1.ods"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 1, oo.first_row
+ end
if EXCEL
#-- Excel
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = 1 # oo.sheets.first
assert_equal 1, oo.first_row
end
if GOOGLE
- #-- Google
- @goo.default_sheet = @goo.sheets.first
- assert_equal 1, @goo.first_row
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 1, oo.first_row
end
end
def test_first_column
- #-- OpenOffice
- oo = Openoffice.new(File.join("test","numbers1.ods"))
- oo.default_sheet = oo.sheets.first
- assert_equal 1, oo.first_column
+ if OPENOFFICE
+ oo = Openoffice.new(File.join("test","numbers1.ods"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 1, oo.first_column
+ end
if EXCEL
#-- Excel
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = 1 # oo.sheets.first
assert_equal 1, oo.first_column
end
if GOOGLE
- #-- Google
- @goo.default_sheet = 1 # @goo.sheets.first
- assert_equal 1, @goo.first_column
+ assert_nothing_raised(Timeout::Error) {
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 1, oo.first_column
+end
+}
end
end
def test_first_column_as_letter_openoffice
- if OPENOFFICE #-- OpenOffice
+ if OPENOFFICE
oo = Openoffice.new(File.join("test","numbers1.ods"))
oo.default_sheet = oo.sheets.first
assert_equal 'A', oo.first_column_as_letter
end
end
- def test_first_column_as_letter
+ def test_first_column_as_letter_excel
if EXCEL
#-- Excel
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = 1 # oo.sheets.first
assert_equal 'A', oo.first_column_as_letter
end
+ end
+
+ def test_first_column_as_letter_google
if GOOGLE
- #-- Google
- @goo.default_sheet = @goo.sheets.first
- assert_equal 'A', @goo.first_column_as_letter
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 'A', oo.first_column_as_letter
end
end
def test_sheetname
if OPENOFFICE
- #-- OpenOffice
oo = Openoffice.new(File.join("test","numbers1.ods"))
oo.default_sheet = "Name of Sheet 2"
assert_equal 'I am sheet 2', oo.cell('C',5)
end
if EXCEL
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = "Name of Sheet 2"
assert_equal 'I am sheet 2', oo.cell('C',5)
end
+ if GOOGLE
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = "Name of Sheet 2"
+ assert_equal 'I am sheet 2', oo.cell('C',5)
+ end
end
def test_boundaries
#-- OpenOffice
oo = Openoffice.new(File.join("test","numbers1.ods"))
@@ -638,17 +737,15 @@
assert_raise(ArgumentError) {
#oo.default_sheet = "first sheet"
oo.default_sheet = "Tabelle1"
}
end
- after Date.new(2007,7,20) do
assert_nothing_raised(ArgumentError) {
# oo.default_sheet = 1
#oo.default_sheet = "first sheet"
oo.default_sheet = "Tabelle1"
}
- end
end
end
def test_empty_eh
if OPENOFFICE #-- OpenOffice
@@ -669,13 +766,13 @@
end
def test_writeopenoffice
if OPENOFFICEWRITE
File.cp(File.join("test","numbers1.ods"),
- File.join("test","numbers2.ods"))
+ File.join("test","numbers2.ods"))
File.cp(File.join("test","numbers2.ods"),
- File.join("test","bak_numbers2.ods"))
+ File.join("test","bak_numbers2.ods"))
oo = Openoffice.new(File.join("test","numbers2.ods"))
oo.default_sheet = oo.sheets.first
oo.first_row.upto(oo.last_row) {|y|
oo.first_column.upto(oo.last_column) {|x|
unless oo.empty?(y,x)
@@ -699,11 +796,11 @@
assert_equal oo2.cell('c',2)+7, oo1.cell('c',2)
assert_equal oo2.cell('d',2)+7, oo1.cell('d',2)
assert_equal oo2.cell('e',2)+7, oo1.cell('e',2)
File.cp(File.join("test","bak_numbers2.ods"),
- File.join("test","numbers2.ods"))
+ File.join("test","numbers2.ods"))
end
end
def test_reload
if OPENOFFICE
@@ -732,27 +829,33 @@
assert_equal 10, oo.cell('b',1)
assert_equal 10, oo.cell('c',1)
assert_equal 10, oo.cell('d',1)
assert_equal 10, oo.cell('e',1)
end
- if EXCEL
- oo = Excel.new(File.join("test","numbers1.xls"))
- oo.default_sheet = 4
- assert_equal Date.new(2007,06,16), oo.cell('a',1)
- assert_equal 10, oo.cell('b',1)
- assert_equal 10, oo.cell('c',1)
- assert_equal 10, oo.cell('d',1)
- assert_equal 10, oo.cell('e',1)
- end
- if GOOGLE
- @goo.default_sheet = "Sheet4"
- assert_equal Date.new(2007,06,16), @goo.cell('a',1)
- assert_equal 10, @goo.cell('b',1)
- assert_equal 10, @goo.cell('c',1)
- assert_equal 10, @goo.cell('d',1)
- assert_equal 10, @goo.cell('e',1)
- end
+ #if EXCEL
+ # # dieser Test ist fuer Excel sheets eigentlich nicht noetig,
+ # # da der Bug nur bei OO-Dokumenten auftrat
+ # oo = Excel.new(File.join("test","numbers1.xls"))
+ # oo.default_sheet = 4
+ # assert_equal Date.new(2007,06,16), oo.cell('a',1)
+ # assert_equal 10, oo.cell('b',1)
+ # assert_equal 10, oo.cell('c',1)
+ # assert_equal 10, oo.cell('d',1)
+ # assert_equal 10, oo.cell('e',1)
+ #end
+ #if GOOGLE
+ # # dieser Test ist fuer Google sheets eigentlich nicht noetig,
+ # # da der Bug nur bei OO-Dokumenten auftrat
+ # oo = Google.new(key_of("numbers1"))
+ # #oo.sheetlist # TODO: refactor me!
+ # oo.default_sheet = "Sheet4"
+ # assert_equal Date.new(2007,06,16), oo.cell('a',1)
+ # assert_equal 10, oo.cell('b',1)
+ # assert_equal 10, oo.cell('c',1)
+ # assert_equal 10, oo.cell('d',1)
+ # assert_equal 10, oo.cell('e',1)
+ #end
end
def test_bug_italo_ve
if OPENOFFICE
oo = Openoffice.new(File.join("test","numbers1.ods"))
@@ -770,32 +873,21 @@
assert_equal 5, oo.cell('b',1)
assert_equal 5, oo.cell('c',1)
assert_equal 2, oo.cell('a',2)
assert_equal 3, oo.cell('a',3)
end
+ #if GOOGLE
+ # oo = Google.new(key_of("numbers1"))
+ # oo.default_sheet = "Sheet5"
+ # assert_equal 1, oo.cell('A',1)
+ # assert_equal 5, oo.cell('b',1)
+ # assert_equal 5, oo.cell('c',1)
+ # assert_equal 2, oo.cell('a',2)
+ # assert_equal 3, oo.cell('a',3)
+ #end
end
- def DONT_test_large_file
- if OPENOFFICE
- count = 0
- oo = Openoffice.new(File.join("test","Bibelbund.ods"))
- oo.default_sheet = oo.sheets.first
- oo.first_row.upto(oo.last_row) do |row|
- oo.first_column.upto(oo.last_column) do |col|
- unless oo.empty?(row,col)
- count += 1
- a = oo.cell(row,col)
- # puts a
- # b = gets
- end
- end
- end
- puts count.to_s+" cells with content"
- end
-
- end
-
def test_italo_table
local_only do
oo = Openoffice.new(File.join("test","simple_spreadsheet_from_italo.ods"))
oo.default_sheet = oo.sheets.first
@@ -944,13 +1036,13 @@
assert_equal 21, oo.cell('A',7)
assert_equal :formula, oo.celltype('A',7)
assert_equal "=[Sheet2.A1]", oo.formula('C',7)
assert_nil oo.formula('A',6)
assert_equal [[7, 1, "=SUM([.A1:.A6])"],
- [7, 2, "=SUM([.$A$1:.B6])"],
- [7, 3, "=[Sheet2.A1]"],
- [8, 2, "=SUM([.$A$1:.B7])"],
+ [7, 2, "=SUM([.$A$1:.B6])"],
+ [7, 3, "=[Sheet2.A1]"],
+ [8, 2, "=SUM([.$A$1:.B7])"],
], oo.formulas(oo.sheets.first)
after Date.new(2007,6,25) do
# setting a cell
oo.set('A',15, 41)
@@ -958,13 +1050,10 @@
oo.set('A',16, "41")
assert_equal "41", oo.cell('A',16)
oo.set('A',17, 42.5)
assert_equal 42.5, oo.cell('A',17)
end
- #after Date.new(2007,7,30) do
- # assert_equal 21, oo.solve('a',7)
- #end
end
if defined? excel_supports_formulas
if EXCEL
oo = Excel.new(File.join("test","formula.xls"))
oo.default_sheet = oo.sheets.first
@@ -977,13 +1066,13 @@
assert_equal :formula, oo.celltype('A',7)
assert_equal 21, oo.cell('A',7)
assert_equal " = [Sheet2.A1]", oo.formula('C',7)
assert_nil oo.formula('A',6)
assert_equal [[7, 1, " = SUM([.A1:.A6])"],
- [7, 2, " = SUM([.$A$1:.B6])"],
- [7, 3, " = [Sheet2.A1]"],
- [8, 2, " = SUM([.$A$1:.B7])"],
+ [7, 2, " = SUM([.$A$1:.B6])"],
+ [7, 3, " = [Sheet2.A1]"],
+ [8, 2, " = SUM([.$A$1:.B7])"],
], oo.formulas
after Date.new(2007,6,25) do
# setting a cell
oo.set('A',15, 41)
@@ -991,20 +1080,45 @@
oo.set('A',16, "41")
assert_equal "41", oo.cell('A',16)
oo.set('A',17, 42.5)
assert_equal 42.5, oo.cell('A',17)
end
- #after Date.new(2007,7,30) do
- # assert_equal 21, oo.solve('a',7)
- #end
end
end
+ if GOOGLE
+ oo = Google.new(key_of("formula"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal 1, oo.cell('A',1)
+ assert_equal 2, oo.cell('A',2)
+ assert_equal 3, oo.cell('A',3)
+ assert_equal 4, oo.cell('A',4)
+ assert_equal 5, oo.cell('A',5)
+ assert_equal 6, oo.cell('A',6)
+ # assert_equal 21, oo.cell('A',7)
+ assert_equal 21.0, oo.cell('A',7) #TODO: better solution Fixnum/Float
+ assert_equal :formula, oo.celltype('A',7)
+ # assert_equal "=[Sheet2.A1]", oo.formula('C',7)
+ # !!! different from formulas in Openoffice
+ assert_equal "=sheet2!R[-6]C[-2]", oo.formula('C',7)
+ assert_nil oo.formula('A',6)
+ # assert_equal [[7, 1, "=SUM([.A1:.A6])"],
+ # [7, 2, "=SUM([.$A$1:.B6])"],
+ # [7, 3, "=[Sheet2.A1]"],
+ # [8, 2, "=SUM([.$A$1:.B7])"],
+ # ], oo.formulas(oo.sheets.first)
+ # different format than in openoffice spreadsheets:
+ assert_equal [[7, 1, "=SUM(R[-6]C[0]:R[-1]C[0])"],
+ [7, 2, "=SUM(R1C1:R[-1]C[0])"],
+ [7, 3, "=sheet2!R[-6]C[-2]"],
+ [8, 2, "=SUM(R1C1:R[-1]C[0])"]],
+ oo.formulas(oo.sheets.first)
+ end # GOOGLE
end
- def test_borders_sheets
+ def test_borders_sheets_openoffice
if OPENOFFICE
oo = Openoffice.new(File.join("test","borders.ods"))
oo.default_sheet = oo.sheets[1]
assert_equal 6, oo.first_row
assert_equal 11, oo.last_row
@@ -1021,10 +1135,12 @@
assert_equal 7, oo.first_row
assert_equal 12, oo.last_row
assert_equal 5, oo.first_column
assert_equal 9, oo.last_column
end
+ end
+ def test_borders_sheets_excel
if EXCEL
oo = Excel.new(File.join("test","borders.xls"))
oo.default_sheet = oo.sheets[1]
assert_equal 6, oo.first_row
assert_equal 11, oo.last_row
@@ -1041,11 +1157,41 @@
assert_equal 7, oo.first_row
assert_equal 12, oo.last_row
assert_equal 5, oo.first_column
assert_equal 9, oo.last_column
end
+ end
+ def test_borders_sheets_google
+ if GOOGLE
+ assert_nothing_raised(Timeout::Error) {
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ oo = Google.new(key_of("borders"))
+ oo.default_sheet = oo.sheets[0]
+ assert_equal oo.sheets.first, oo.default_sheet
+ assert_equal 5, oo.first_row
+ oo.default_sheet = oo.sheets[1]
+ assert_equal 'Sheet2', oo.default_sheet
+ assert_equal 6, oo.first_row
+ assert_equal 11, oo.last_row
+ assert_equal 4, oo.first_column
+ assert_equal 8, oo.last_column
+
+ oo.default_sheet = oo.sheets.first
+ assert_equal 5, oo.first_row
+ assert_equal 10, oo.last_row
+ assert_equal 3, oo.first_column
+ assert_equal 7, oo.last_column
+
+ oo.default_sheet = oo.sheets[2]
+ assert_equal 7, oo.first_row
+ assert_equal 12, oo.last_row
+ assert_equal 5, oo.first_column
+ assert_equal 9, oo.last_column
+end
+}
+ end
end
def yaml_entry(row,col,type,value)
"cell_#{row}_#{col}: \n row: #{row} \n col: #{col} \n celltype: #{type} \n value: #{value} \n"
end
@@ -1056,47 +1202,70 @@
oo.default_sheet = oo.sheets.first
assert_equal "--- \n"+yaml_entry(5,1,"date","1961-11-21"), oo.to_yaml({}, 5,1,5,1)
assert_equal "--- \n"+yaml_entry(8,3,"string","thisisc8"), oo.to_yaml({}, 8,3,8,3)
assert_equal "--- \n"+yaml_entry(12,3,"float",43.0), oo.to_yaml({}, 12,3,12,3)
assert_equal \
- "--- \n"+yaml_entry(12,3,"float",43.0) +
- yaml_entry(12,4,"float",44.0) +
- yaml_entry(12,5,"float",45.0), oo.to_yaml({}, 12,3,12)
+ "--- \n"+yaml_entry(12,3,"float",43.0) +
+ yaml_entry(12,4,"float",44.0) +
+ yaml_entry(12,5,"float",45.0), oo.to_yaml({}, 12,3,12)
assert_equal \
- "--- \n"+yaml_entry(12,3,"float",43.0)+
- yaml_entry(12,4,"float",44.0)+
- yaml_entry(12,5,"float",45.0)+
- yaml_entry(15,3,"float",43.0)+
- yaml_entry(15,4,"float",44.0)+
- yaml_entry(15,5,"float",45.0)+
- yaml_entry(16,3,"string","dreiundvierzig")+
- yaml_entry(16,4,"string","vierundvierzig")+
- yaml_entry(16,5,"string","fuenfundvierzig"), oo.to_yaml({}, 12,3)
+ "--- \n"+yaml_entry(12,3,"float",43.0)+
+ yaml_entry(12,4,"float",44.0)+
+ yaml_entry(12,5,"float",45.0)+
+ yaml_entry(15,3,"float",43.0)+
+ yaml_entry(15,4,"float",44.0)+
+ yaml_entry(15,5,"float",45.0)+
+ yaml_entry(16,3,"string","dreiundvierzig")+
+ yaml_entry(16,4,"string","vierundvierzig")+
+ yaml_entry(16,5,"string","fuenfundvierzig"), oo.to_yaml({}, 12,3)
#example: puts oo.to_yaml({}, 12,3)
#example: puts oo.to_yaml({"probe" => "bodenproben_2007-06-30"}, 12,3)
end
if EXCEL
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = 1
assert_equal "--- \n"+yaml_entry(5,1,"date","1961-11-21"), oo.to_yaml({}, 5,1,5,1)
assert_equal "--- \n"+yaml_entry(8,3,"string","thisisc8"), oo.to_yaml({}, 8,3,8,3)
assert_equal "--- \n"+yaml_entry(12,3,"float",43.0), oo.to_yaml({}, 12,3,12,3)
assert_equal \
- "--- \n"+yaml_entry(12,3,"float",43.0) +
- yaml_entry(12,4,"float",44.0) +
- yaml_entry(12,5,"float",45.0), oo.to_yaml({}, 12,3,12)
+ "--- \n"+yaml_entry(12,3,"float",43.0) +
+ yaml_entry(12,4,"float",44.0) +
+ yaml_entry(12,5,"float",45.0), oo.to_yaml({}, 12,3,12)
assert_equal \
- "--- \n"+yaml_entry(12,3,"float",43.0)+
- yaml_entry(12,4,"float",44.0)+
- yaml_entry(12,5,"float",45.0)+
- yaml_entry(15,3,"float",43.0)+
- yaml_entry(15,4,"float",44.0)+
- yaml_entry(15,5,"float",45.0)+
- yaml_entry(16,3,"string","dreiundvierzig")+
- yaml_entry(16,4,"string","vierundvierzig")+
- yaml_entry(16,5,"string","fuenfundvierzig"), oo.to_yaml({}, 12,3)
+ "--- \n"+yaml_entry(12,3,"float",43.0)+
+ yaml_entry(12,4,"float",44.0)+
+ yaml_entry(12,5,"float",45.0)+
+ yaml_entry(15,3,"float",43.0)+
+ yaml_entry(15,4,"float",44.0)+
+ yaml_entry(15,5,"float",45.0)+
+ yaml_entry(16,3,"string","dreiundvierzig")+
+ yaml_entry(16,4,"string","vierundvierzig")+
+ yaml_entry(16,5,"string","fuenfundvierzig"), oo.to_yaml({}, 12,3)
end
+ if GOOGLE
+ oo = Google.new(key_of("numbers1"))
+ oo.default_sheet = oo.sheets.first
+ assert_equal "--- \n"+yaml_entry(5,1,"date","1961-11-21"), oo.to_yaml({}, 5,1,5,1)
+ assert_equal "--- \n"+yaml_entry(8,3,"string","thisisc8"), oo.to_yaml({}, 8,3,8,3)
+ assert_equal "--- \n"+yaml_entry(12,3,"float",43.0), oo.to_yaml({}, 12,3,12,3)
+ assert_equal \
+ "--- \n"+yaml_entry(12,3,"float",43.0) +
+ yaml_entry(12,4,"float",44.0) +
+ yaml_entry(12,5,"float",45.0), oo.to_yaml({}, 12,3,12)
+ assert_equal \
+ "--- \n"+yaml_entry(12,3,"float",43.0)+
+ yaml_entry(12,4,"float",44.0)+
+ yaml_entry(12,5,"float",45.0)+
+ yaml_entry(15,3,"float",43.0)+
+ yaml_entry(15,4,"float",44.0)+
+ yaml_entry(15,5,"float",45.0)+
+ yaml_entry(16,3,"string","dreiundvierzig")+
+ yaml_entry(16,4,"string","vierundvierzig")+
+ yaml_entry(16,5,"string","fuenfundvierzig"), oo.to_yaml({}, 12,3)
+ #example: puts oo.to_yaml({}, 12,3)
+ #example: puts oo.to_yaml({"probe" => "bodenproben_2007-06-30"}, 12,3)
+ end
end
if false
def test_soap_server
#threads = []
@@ -1236,115 +1405,131 @@
assert_equal 42, oo.cell('B',4)
assert_equal 43, oo.cell('C',4)
assert_equal 44, oo.cell('D',4)
end
if GOOGLE
- after Date.new(2007,8,30) do
- raise "need to write test for GOOGLE"
- end
+ oo = Google.new(key_of("only_one_sheet"))
+ # oo.default_sheet = oo.sheets.first
+ assert_equal 42, oo.cell('B',4)
+ assert_equal 43, oo.cell('C',4)
+ assert_equal 44, oo.cell('D',4)
+ oo.default_sheet = oo.sheets.first
+ assert_equal 42, oo.cell('B',4)
+ assert_equal 43, oo.cell('C',4)
+ assert_equal 44, oo.cell('D',4)
end
end
def test_excel_open_from_uri_and_zipped
- if ONLINE
- url = 'http://stiny-leonhard.de/bode-v1.xls.zip'
- excel = Excel.new(url, :zip)
- assert_equal 'ist "e" im Nenner von H(s)', excel.cell('b', 5)
- excel.remove_tmp # don't forget to remove the temporary files
+ if EXCEL
+ if ONLINE
+ url = 'http://stiny-leonhard.de/bode-v1.xls.zip'
+ excel = Excel.new(url, :zip)
+ assert_equal 'ist "e" im Nenner von H(s)', excel.cell('b', 5)
+ excel.remove_tmp # don't forget to remove the temporary files
+ end
end
end
def test_openoffice_open_from_uri_and_zipped
- if ONLINE
- url = 'http://spazioinwind.libero.it/s2/rata.ods.zip'
- sheet = Openoffice.new(url, :zip)
- #has been changed: assert_equal 'ist "e" im Nenner von H(s)', sheet.cell('b', 5)
- assert_in_delta 0.001, 505.14, sheet.cell('c', 33).to_f
- sheet.remove_tmp # don't forget to remove the temporary files
+ if OPENOFFICE
+ if ONLINE
+ url = 'http://spazioinwind.libero.it/s2/rata.ods.zip'
+ sheet = Openoffice.new(url, :zip)
+ #has been changed: assert_equal 'ist "e" im Nenner von H(s)', sheet.cell('b', 5)
+ assert_in_delta 0.001, 505.14, sheet.cell('c', 33).to_f
+ sheet.remove_tmp # don't forget to remove the temporary files
+ end
end
end
def test_excel_zipped
- excel = Excel.new(File.join("test","bode-v1.xls.zip"), :zip)
- assert excel
- assert_equal 'ist "e" im Nenner von H(s)', excel.cell('b', 5)
- excel.remove_tmp # don't forget to remove the temporary files
+ if EXCEL
+ excel = Excel.new(File.join("test","bode-v1.xls.zip"), :zip)
+ assert excel
+ assert_equal 'ist "e" im Nenner von H(s)', excel.cell('b', 5)
+ excel.remove_tmp # don't forget to remove the temporary files
+ end
end
def test_openoffice_zipped
- oo = Openoffice.new(File.join("test","bode-v1.ods.zip"), :zip)
- assert oo
- oo.default_sheet = oo.sheets.first
- assert_equal 'ist "e" im Nenner von H(s)', oo.cell('b', 5)
- oo.remove_tmp # don't forget to remove the temporary files
+ if OPENOFFICE
+ oo = Openoffice.new(File.join("test","bode-v1.ods.zip"), :zip)
+ assert oo
+ oo.default_sheet = oo.sheets.first
+ assert_equal 'ist "e" im Nenner von H(s)', oo.cell('b', 5)
+ oo.remove_tmp # don't forget to remove the temporary files
+ end
end
def test_bug_ric
- oo = Openoffice.new(File.join("test","ric.ods"))
- oo.default_sheet = oo.sheets.first
- assert oo.empty?('A',1)
- assert oo.empty?('B',1)
- assert oo.empty?('C',1)
- assert oo.empty?('D',1)
- expected = 1
- letter = 'e'
- while letter <= 'u'
- assert_equal expected, oo.cell(letter,1)
- letter.succ!
- expected += 1
- end
- #assert_equal 2, oo.cell('f',1)
- #assert_equal 3, oo.cell('g',1)
- #assert_equal 4, oo.cell('h',1)
- #assert_equal 5, oo.cell('i',1)
- #assert_equal 6, oo.cell('j',1)
- #assert_equal 7, oo.cell('k',1)
- #assert_equal 8, oo.cell('l',1)
- #assert_equal 9, oo.cell('m',1)
- #assert_equal 10, oo.cell('n',1)
- #assert_equal 11, oo.cell('o',1)
- #assert_equal 12, oo.cell('p',1)
- #assert_equal 13, oo.cell('q',1)
- #assert_equal 14, oo.cell('r',1)
- #assert_equal 15, oo.cell('s',1)
- #assert_equal 16, oo.cell('t',1)
- #assert_equal 17, oo.cell('u',1)
- assert_equal 'J', oo.cell('v',1)
- assert_equal 'P', oo.cell('w',1)
- assert_equal 'B', oo.cell('x',1)
- assert_equal 'All', oo.cell('y',1)
- assert_equal 0, oo.cell('a',2)
- assert oo.empty?('b',2)
- assert oo.empty?('c',2)
- assert oo.empty?('d',2)
+ if OPENOFFICE
+ oo = Openoffice.new(File.join("test","ric.ods"))
+ oo.default_sheet = oo.sheets.first
+ assert oo.empty?('A',1)
+ assert oo.empty?('B',1)
+ assert oo.empty?('C',1)
+ assert oo.empty?('D',1)
+ expected = 1
+ letter = 'e'
+ while letter <= 'u'
+ assert_equal expected, oo.cell(letter,1)
+ letter.succ!
+ expected += 1
+ end
+ #assert_equal 2, oo.cell('f',1)
+ #assert_equal 3, oo.cell('g',1)
+ #assert_equal 4, oo.cell('h',1)
+ #assert_equal 5, oo.cell('i',1)
+ #assert_equal 6, oo.cell('j',1)
+ #assert_equal 7, oo.cell('k',1)
+ #assert_equal 8, oo.cell('l',1)
+ #assert_equal 9, oo.cell('m',1)
+ #assert_equal 10, oo.cell('n',1)
+ #assert_equal 11, oo.cell('o',1)
+ #assert_equal 12, oo.cell('p',1)
+ #assert_equal 13, oo.cell('q',1)
+ #assert_equal 14, oo.cell('r',1)
+ #assert_equal 15, oo.cell('s',1)
+ #assert_equal 16, oo.cell('t',1)
+ #assert_equal 17, oo.cell('u',1)
+ assert_equal 'J', oo.cell('v',1)
+ assert_equal 'P', oo.cell('w',1)
+ assert_equal 'B', oo.cell('x',1)
+ assert_equal 'All', oo.cell('y',1)
+ assert_equal 0, oo.cell('a',2)
+ assert oo.empty?('b',2)
+ assert oo.empty?('c',2)
+ assert oo.empty?('d',2)
- #'e'.upto('s') {|letter|
- # assert_equal 'B', oo.cell(letter,2)
- #}
- assert_equal 'B', oo.cell('e',2)
- assert_equal 'B', oo.cell('f',2)
- assert_equal 'B', oo.cell('g',2)
- assert_equal 'B', oo.cell('h',2)
- assert_equal 'B', oo.cell('i',2)
- assert_equal 'B', oo.cell('j',2)
- assert_equal 'B', oo.cell('k',2)
- assert_equal 'B', oo.cell('l',2)
- assert_equal 'B', oo.cell('m',2)
- assert_equal 'B', oo.cell('n',2)
- assert_equal 'B', oo.cell('o',2)
- assert_equal 'B', oo.cell('p',2)
- assert_equal 'B', oo.cell('q',2)
- assert_equal 'B', oo.cell('r',2)
- assert_equal 'B', oo.cell('s',2)
+ #'e'.upto('s') {|letter|
+ # assert_equal 'B', oo.cell(letter,2)
+ #}
+ assert_equal 'B', oo.cell('e',2)
+ assert_equal 'B', oo.cell('f',2)
+ assert_equal 'B', oo.cell('g',2)
+ assert_equal 'B', oo.cell('h',2)
+ assert_equal 'B', oo.cell('i',2)
+ assert_equal 'B', oo.cell('j',2)
+ assert_equal 'B', oo.cell('k',2)
+ assert_equal 'B', oo.cell('l',2)
+ assert_equal 'B', oo.cell('m',2)
+ assert_equal 'B', oo.cell('n',2)
+ assert_equal 'B', oo.cell('o',2)
+ assert_equal 'B', oo.cell('p',2)
+ assert_equal 'B', oo.cell('q',2)
+ assert_equal 'B', oo.cell('r',2)
+ assert_equal 'B', oo.cell('s',2)
- assert oo.empty?('t',2)
- assert oo.empty?('u',2)
- assert_equal 0 , oo.cell('v',2)
- assert_equal 0 , oo.cell('w',2)
- assert_equal 15 , oo.cell('x',2)
- assert_equal 15 , oo.cell('y',2)
+ assert oo.empty?('t',2)
+ assert oo.empty?('u',2)
+ assert_equal 0 , oo.cell('v',2)
+ assert_equal 0 , oo.cell('w',2)
+ assert_equal 15 , oo.cell('x',2)
+ assert_equal 15 , oo.cell('y',2)
+ end
end
def test_mehrteilig
if OPENOFFICE
oo = Openoffice.new(File.join("test","Bibelbund1.ods"))
@@ -1356,11 +1541,12 @@
def test_to_csv_openoffice
if LONG_RUN
if OPENOFFICE
assert_nothing_raised(Timeout::Error) {
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
- oo = Openoffice.new(File.join("test","Bibelbund500.ods"))
+ File.delete("/tmp/Bibelbund.csv")
+ oo = Openoffice.new(File.join("test","Bibelbund.ods"))
oo.default_sheet = oo.sheets.first
assert_equal "Tagebuch des Sekret\303\244rs. Letzte Tagung 15./16.11.75 Schweiz", oo.cell(45,'A')
assert_equal "Tagebuch des Sekret\303\244rs. Nachrichten aus Chile", oo.cell(46,'A')
assert_equal "Tagebuch aus Chile Juli 1977", oo.cell(55,'A')
assert oo.to_csv("/tmp/Bibelbund.csv")
@@ -1375,21 +1561,43 @@
def test_to_csv_excel
if LONG_RUN
if EXCEL
assert_nothing_raised(Timeout::Error) {
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
- oo = Excel.new(File.join("test","Bibelbund500.xls"))
+ File.delete("/tmp/Bibelbund.csv")
+ oo = Excel.new(File.join("test","Bibelbund.xls"))
oo.default_sheet = oo.sheets.first
assert oo.to_csv("/tmp/Bibelbund.csv")
assert File.exists?("/tmp/Bibelbund.csv")
assert_equal "", `diff test/Bibelbund.csv /tmp/Bibelbund.csv`
end
}
end
end # LONG_RUN
end # def to_csv
+ def test_to_csv_google
+# maybe a better example... TODO:
+after Date.new(2008,1,30) do
+ if GOOGLE
+ assert_nothing_raised(Timeout::Error) {
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ File.delete("/tmp/numbers1.csv") if File.exists?("/tmp/numbers1.csv")
+ oo = Google.new(key_of('numbers1'))
+ oo.default_sheet = oo.sheets.first
+ #?? assert_equal "Tagebuch des Sekret\303\244rs. Letzte Tagung 15./16.11.75 Schweiz", oo.cell(45,'A')
+ #?? assert_equal "Tagebuch des Sekret\303\244rs. Nachrichten aus Chile", oo.cell(46,'A')
+ #?? assert_equal "Tagebuch aus Chile Juli 1977", oo.cell(55,'A')
+ assert oo.to_csv("/tmp/numbers1.csv")
+ assert File.exists?("/tmp/numbers1.csv")
+ assert_equal "", `diff test/numbers1.csv /tmp/numbers1.csv`
+ end # Timeout
+ } # nothing_raised
+ end # GOOGLE
+end # after
+ end
+
def test_bug_mehrere_datum
if OPENOFFICE
oo = Openoffice.new(File.join("test","numbers1.ods"))
oo.default_sheet = 'Sheet5'
assert_equal :date, oo.celltype('A',4)
@@ -1541,10 +1749,51 @@
assert_equal "ABC", oo.cell('D',6,sheetname)
assert_equal "ABC", oo.cell('E',6,sheetname)
oo.reload
end
end
+ if GOOGLE
+ oo = Google.new(key_of("numbers1"))
+ 2.times do
+ oo.default_sheet = "Tabelle1"
+ assert_equal 1, oo.cell(1,1)
+ assert_equal 1, oo.cell(1,1,"Tabelle1")
+ assert_equal "I am sheet 2", oo.cell('C',5,"Name of Sheet 2")
+ sheetname = 'Sheet5'
+ assert_equal :date, oo.celltype('A',4,sheetname)
+ assert_equal :date, oo.celltype('B',4,sheetname)
+ assert_equal :date, oo.celltype('C',4,sheetname)
+ assert_equal :date, oo.celltype('D',4,sheetname)
+ assert_equal :date, oo.celltype('E',4,sheetname)
+ assert_equal Date.new(2007,11,21), oo.cell('A',4,sheetname)
+ assert_equal Date.new(2007,11,21), oo.cell('B',4,sheetname)
+ assert_equal Date.new(2007,11,21), oo.cell('C',4,sheetname)
+ assert_equal Date.new(2007,11,21), oo.cell('D',4,sheetname)
+ assert_equal Date.new(2007,11,21), oo.cell('E',4,sheetname)
+ assert_equal :float, oo.celltype('A',5,sheetname)
+ assert_equal :float, oo.celltype('B',5,sheetname)
+ assert_equal :float, oo.celltype('C',5,sheetname)
+ assert_equal :float, oo.celltype('D',5,sheetname)
+ assert_equal :float, oo.celltype('E',5,sheetname)
+ assert_equal 42, oo.cell('A',5,sheetname)
+ assert_equal 42, oo.cell('B',5,sheetname)
+ assert_equal 42, oo.cell('C',5,sheetname)
+ assert_equal 42, oo.cell('D',5,sheetname)
+ assert_equal 42, oo.cell('E',5,sheetname)
+ assert_equal :string, oo.celltype('A',6,sheetname)
+ assert_equal :string, oo.celltype('B',6,sheetname)
+ assert_equal :string, oo.celltype('C',6,sheetname)
+ assert_equal :string, oo.celltype('D',6,sheetname)
+ assert_equal :string, oo.celltype('E',6,sheetname)
+ assert_equal "ABC", oo.cell('A',6,sheetname)
+ assert_equal "ABC", oo.cell('B',6,sheetname)
+ assert_equal "ABC", oo.cell('C',6,sheetname)
+ assert_equal "ABC", oo.cell('D',6,sheetname)
+ assert_equal "ABC", oo.cell('E',6,sheetname)
+ oo.reload
+ end
+ end
end
def test_bug_empty_sheet
oo = Openoffice.new(File.join("test","formula.ods"))
oo.default_sheet = 'Sheet3' # is an empty sheet
@@ -1552,15 +1801,15 @@
oo.to_csv(File.join("/","tmp","emptysheet.csv"))
}
assert_equal "", `cat /tmp/emptysheet.csv`
end
- def test_find_by_row_openoffice
+ def test_find_by_row_huge_document_openoffice
if LONG_RUN
if OPENOFFICE
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
- oo = Openoffice.new(File.join("test","Bibelbund500.ods"))
+ oo = Openoffice.new(File.join("test","Bibelbund.ods"))
oo.default_sheet = oo.sheets.first
rec = oo.find 20
assert rec
# assert_equal "Brief aus dem Sekretariat", rec[0]
#p rec
@@ -1573,15 +1822,15 @@
end
end
end
end
- def test_find_by_row_excel
+ def test_find_by_row_huge_document_excel
if LONG_RUN
if EXCEL
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
- oo = Excel.new(File.join("test","Bibelbund500.xls"))
+ oo = Excel.new(File.join("test","Bibelbund.xls"))
oo.default_sheet = oo.sheets.first
rec = oo.find 20
assert rec
assert_equal "Brief aus dem Sekretariat", rec[0]
@@ -1591,97 +1840,115 @@
end
end
end
end
+ def test_find_by_row_huge_document_google
+ if LONG_RUN
+ if GOOGLE
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ oo = Google.new(key_of("Bibelbund"))
+ oo.default_sheet = oo.sheets.first
+ rec = oo.find 20
+ assert rec
+ assert_equal "Brief aus dem Sekretariat", rec[0]
+
+ rec = oo.find 22
+ assert rec
+ assert_equal "Brief aus dem Skretariat. Tagung in Amberg/Opf.",rec[0]
+ end
+ end
+ end
+ end
+
def test_find_by_conditions_openoffice
if LONG_RUN
if OPENOFFICE
assert_nothing_raised(Timeout::Error) {
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
- oo = Openoffice.new(File.join("test","Bibelbund500.ods"))
+ oo = Openoffice.new(File.join("test","Bibelbund.ods"))
oo.default_sheet = oo.sheets.first
#-----------------------------------------------------------------
zeilen = oo.find(:all, :conditions => {
- 'TITEL' => 'Brief aus dem Sekretariat'
- }
+ 'TITEL' => 'Brief aus dem Sekretariat'
+ }
)
assert_equal 2, zeilen.size
assert_equal [{"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>316.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
- "NUMMER"=>"1982-3",
- "TITEL"=>"Brief aus dem Sekretariat"},
- {"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>222.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
- "NUMMER"=>"1983-2",
- "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
+ "INTERNET"=>nil,
+ "SEITE"=>316.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "NUMMER"=>"1982-3",
+ "TITEL"=>"Brief aus dem Sekretariat"},
+ {"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>222.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "NUMMER"=>"1983-2",
+ "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
#----------------------------------------------------------
zeilen = oo.find(:all,
- :conditions => { 'VERFASSER' => 'Almassy, Annelene von' }
+ :conditions => { 'VERFASSER' => 'Almassy, Annelene von' }
)
assert_equal 13, zeilen.size
#----------------------------------------------------------
zeilen = oo.find(:all, :conditions => {
- 'TITEL' => 'Brief aus dem Sekretariat',
- 'VERFASSER' => 'Almassy, Annelene von',
- }
+ 'TITEL' => 'Brief aus dem Sekretariat',
+ 'VERFASSER' => 'Almassy, Annelene von',
+ }
)
assert_equal 2, zeilen.size
assert_equal [{"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>316.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
- "NUMMER"=>"1982-3",
- "TITEL"=>"Brief aus dem Sekretariat"},
- {"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>222.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
- "NUMMER"=>"1983-2",
- "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
+ "INTERNET"=>nil,
+ "SEITE"=>316.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "NUMMER"=>"1982-3",
+ "TITEL"=>"Brief aus dem Sekretariat"},
+ {"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>222.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "NUMMER"=>"1983-2",
+ "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
# Result as an array
zeilen = oo.find(:all,
- :conditions => {
- 'TITEL' => 'Brief aus dem Sekretariat',
- 'VERFASSER' => 'Almassy, Annelene von',
- }, :array => true)
+ :conditions => {
+ 'TITEL' => 'Brief aus dem Sekretariat',
+ 'VERFASSER' => 'Almassy, Annelene von',
+ }, :array => true)
assert_equal 2, zeilen.size
assert_equal [
- [
- "Brief aus dem Sekretariat",
- "Almassy, Annelene von",
- "Bibel+Gem",
- "1982-3",
- 316.0,
- nil,
- "#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
- "Aus dem Bibelbund",
- ],
- [
- "Brief aus dem Sekretariat",
- "Almassy, Annelene von",
- "Bibel+Gem",
- "1983-2",
- 222.0,
- nil,
- "#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
- "Aus dem Bibelbund",
- ]] , zeilen
+ [
+ "Brief aus dem Sekretariat",
+ "Almassy, Annelene von",
+ "Bibel+Gem",
+ "1982-3",
+ 316.0,
+ nil,
+ "#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "Aus dem Bibelbund",
+ ],
+ [
+ "Brief aus dem Sekretariat",
+ "Almassy, Annelene von",
+ "Bibel+Gem",
+ "1983-2",
+ 222.0,
+ nil,
+ "#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "Aus dem Bibelbund",
+ ]] , zeilen
end # Timeout
} # nothing_raised
end
end
end
@@ -1689,69 +1956,162 @@
def test_find_by_conditions_excel
if LONG_RUN
if EXCEL
assert_nothing_raised(Timeout::Error) {
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
- oo = Excel.new(File.join("test","Bibelbund500.xls"))
+ oo = Excel.new(File.join("test","Bibelbund.xls"))
oo.default_sheet = oo.sheets.first
#-----------------------------------------------------------------
zeilen = oo.find(:all, :conditions => {
- 'TITEL' => 'Brief aus dem Sekretariat'
- }
+ 'TITEL' => 'Brief aus dem Sekretariat'
+ }
)
assert_equal 2, zeilen.size
assert_equal [{"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>316.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
- "NUMMER"=>"1982-3",
- "TITEL"=>"Brief aus dem Sekretariat"},
- {"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>222.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
- "NUMMER"=>"1983-2",
- "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
+ "INTERNET"=>nil,
+ "SEITE"=>316.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "NUMMER"=>"1982-3",
+ "TITEL"=>"Brief aus dem Sekretariat"},
+ {"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>222.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "NUMMER"=>"1983-2",
+ "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
#----------------------------------------------------------
zeilen = oo.find(:all,
- :conditions => { 'VERFASSER' => 'Almassy, Annelene von' }
+ :conditions => { 'VERFASSER' => 'Almassy, Annelene von' }
)
assert_equal 13, zeilen.size
#----------------------------------------------------------
zeilen = oo.find(:all, :conditions => {
- 'TITEL' => 'Brief aus dem Sekretariat',
- 'VERFASSER' => 'Almassy, Annelene von',
- }
+ 'TITEL' => 'Brief aus dem Sekretariat',
+ 'VERFASSER' => 'Almassy, Annelene von',
+ }
)
assert_equal 2, zeilen.size
assert_equal [{"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>316.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
- "NUMMER"=>"1982-3",
- "TITEL"=>"Brief aus dem Sekretariat"},
- {"VERFASSER"=>"Almassy, Annelene von",
- "INTERNET"=>nil,
- "SEITE"=>222.0,
- "KENNUNG"=>"Aus dem Bibelbund",
- "OBJEKT"=>"Bibel+Gem",
- "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
- "NUMMER"=>"1983-2",
- "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
+ "INTERNET"=>nil,
+ "SEITE"=>316.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "NUMMER"=>"1982-3",
+ "TITEL"=>"Brief aus dem Sekretariat"},
+ {"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>222.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "NUMMER"=>"1983-2",
+ "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
end # Timeout
} # nothing_raised
end
end
end
+ def test_find_by_conditions_google
+ if LONG_RUN
+ if GOOGLE
+ assert_nothing_raised(Timeout::Error) {
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ oo = Google.new(key_of("Bibelbund"))
+ oo.default_sheet = oo.sheets.first
+ #-----------------------------------------------------------------
+ zeilen = oo.find(:all, :conditions => {
+ 'TITEL' => 'Brief aus dem Sekretariat'
+ }
+ )
+ assert_equal 2, zeilen.size
+ assert_equal [{"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>316.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "NUMMER"=>"1982-3",
+ "TITEL"=>"Brief aus dem Sekretariat"},
+ {"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>222.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "NUMMER"=>"1983-2",
+ "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
+
+ #----------------------------------------------------------
+ zeilen = oo.find(:all,
+ :conditions => { 'VERFASSER' => 'Almassy, Annelene von' }
+ )
+ assert_equal 13, zeilen.size
+ #----------------------------------------------------------
+ zeilen = oo.find(:all, :conditions => {
+ 'TITEL' => 'Brief aus dem Sekretariat',
+ 'VERFASSER' => 'Almassy, Annelene von',
+ }
+ )
+ assert_equal 2, zeilen.size
+ assert_equal [{"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>316.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "NUMMER"=>"1982-3",
+ "TITEL"=>"Brief aus dem Sekretariat"},
+ {"VERFASSER"=>"Almassy, Annelene von",
+ "INTERNET"=>nil,
+ "SEITE"=>222.0,
+ "KENNUNG"=>"Aus dem Bibelbund",
+ "OBJEKT"=>"Bibel+Gem",
+ "PC"=>"#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "NUMMER"=>"1983-2",
+ "TITEL"=>"Brief aus dem Sekretariat"}] , zeilen
+
+ # Result as an array
+ zeilen = oo.find(:all,
+ :conditions => {
+ 'TITEL' => 'Brief aus dem Sekretariat',
+ 'VERFASSER' => 'Almassy, Annelene von',
+ }, :array => true)
+ assert_equal 2, zeilen.size
+ assert_equal [
+ [
+ "Brief aus dem Sekretariat",
+ "Almassy, Annelene von",
+ "Bibel+Gem",
+ "1982-3",
+ 316.0,
+ nil,
+ "#C:\\Bibelbund\\reprint\\BuG1982-3.pdf#",
+ "Aus dem Bibelbund",
+ ],
+ [
+ "Brief aus dem Sekretariat",
+ "Almassy, Annelene von",
+ "Bibel+Gem",
+ "1983-2",
+ 222.0,
+ nil,
+ "#C:\\Bibelbund\\reprint\\BuG1983-2.pdf#",
+ "Aus dem Bibelbund",
+ ]] , zeilen
+ end # Timeout
+ } # nothing_raised
+ end
+ end
+ end
+
def test_columns_openoffice
expected = [1.0,5.0,nil,10.0,Date.new(1961,11,21),'tata',nil,nil,nil,nil,'thisisa11',41.0,nil,nil,41.0,'einundvierzig',nil,Date.new(2007,5,31)]
if OPENOFFICE
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
oo = Openoffice.new(File.join('test','numbers1.ods'))
@@ -1772,17 +2132,29 @@
assert_equal expected, oo.column('a')
end
end
end
+ def test_columns_google
+ expected = [1.0,5.0,nil,10.0,Date.new(1961,11,21),'tata',nil,nil,nil,nil,'thisisa11',41.0,nil,nil,41.0,'einundvierzig',nil,Date.new(2007,5,31)]
+ if GOOGLE
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ oo = Google.new(key_of('numbers1'))
+ oo.default_sheet = oo.sheets.first
+ assert_equal expected, oo.column(1)
+ assert_equal expected, oo.column('a')
+ end
+ end
+ end
+
def test_column_huge_document_openoffice
if LONG_RUN
if OPENOFFICE
assert_nothing_raised(Timeout::Error) {
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
#puts Time.now.to_s + "column Openoffice gestartet"
- oo = Openoffice.new(File.join('test','Bibelbund500.ods'))
+ oo = Openoffice.new(File.join('test','Bibelbund.ods'))
oo.default_sheet = oo.sheets.first
#assert_equal 3735, oo.column('a').size
assert_equal 499, oo.column('a').size
#puts Time.now.to_s + "column Openoffice beendet"
end
@@ -1795,21 +2167,38 @@
if LONG_RUN
if EXCEL
assert_nothing_raised(Timeout::Error) {
Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
#puts Time.now.to_s + "column Excel gestartet"
- oo = Excel.new(File.join('test','Bibelbund500.xls'))
+ oo = Excel.new(File.join('test','Bibelbund.xls'))
oo.default_sheet = oo.sheets.first
#assert_equal 3735, oo.column('a').size
assert_equal 499, oo.column('a').size
#puts Time.now.to_s + "column Excel beendet"
end
}
end
end
end
+ def test_column_huge_document_google
+ if LONG_RUN
+ if GOOGLE_NEW
+ assert_nothing_raised(Timeout::Error) {
+ Timeout::timeout(GLOBAL_TIMEOUT) do |timeout_length|
+ #puts Time.now.to_s + "column Openoffice gestartet"
+ oo = Google.new(key_of('Bibelbund'))
+ oo.default_sheet = oo.sheets.first
+ #assert_equal 3735, oo.column('a').size
+ assert_equal 499, oo.column('a').size
+ #puts Time.now.to_s + "column Openoffice beendet"
+ end
+ }
+ end
+ end
+ end
+
def test_simple_spreadsheet_find_by_condition_openoffice
oo = Openoffice.new(File.join("test","simple_spreadsheet.ods"))
oo.default_sheet = oo.sheets.first
oo.header_line = 3
erg = oo.find(:all, :conditions => {'Comment' => 'Task 1'})
@@ -1819,10 +2208,28 @@
assert_equal 0 , erg[1]['Pause']
assert_equal 1.75 , erg[1]['Sum']
assert_equal "Task 1" , erg[1]['Comment']
end
+ def test_simple_spreadsheet_find_by_condition_google
+ if GOOGLE
+after Date.new(2007,12,15) do
+ oo = Google.new(key_of("simple_spreadsheet"))
+ oo.default_sheet = oo.sheets.first
+ oo.header_line = 3
+ erg = oo.find(:all, :conditions => {'Comment' => 'Task 1'})
+ assert_equal Date.new(2007,05,07), erg[1]['Date']
+ assert_equal 10.75 , erg[1]['Start time']
+ assert_equal 12.50 , erg[1]['End time']
+ assert_equal 0 , erg[1]['Pause']
+ assert_kind_of Float, erg[1]['Sum']
+ assert_equal 1.75 , erg[1]['Sum']
+ assert_equal "Task 1" , erg[1]['Comment']
+end
+ end
+ end
+
def DONT_test_false_encoding
ex = Excel.new(File.join('test','false_encoding.xls'))
ex.default_sheet = ex.sheets.first
assert_equal "Sheet1", ex.sheets.first
ex.first_row.upto(ex.last_row) do |row|
@@ -1887,37 +2294,37 @@
end
def test_info
expected_templ = "File: test/numbers1%s\n"+
- "Number of sheets: 5\n"+
- "Sheets: Tabelle1, Name of Sheet 2, Sheet3, Sheet4, Sheet5\n"+
- "Sheet 1:\n"+
- " First row: 1\n"+
- " Last row: 18\n"+
- " First column: A\n"+
- " Last column: G\n"+
- "Sheet 2:\n"+
- " First row: 5\n"+
- " Last row: 14\n"+
- " First column: B\n"+
- " Last column: E\n"+
- "Sheet 3:\n"+
- " First row: 1\n"+
- " Last row: 1\n"+
- " First column: A\n"+
- " Last column: BA\n"+
- "Sheet 4:\n"+
- " First row: 1\n"+
- " Last row: 1\n"+
- " First column: A\n"+
- " Last column: E\n"+
- "Sheet 5:\n"+
- " First row: 1\n"+
- " Last row: 6\n"+
- " First column: A\n"+
- " Last column: E"
+ "Number of sheets: 5\n"+
+ "Sheets: Tabelle1, Name of Sheet 2, Sheet3, Sheet4, Sheet5\n"+
+ "Sheet 1:\n"+
+ " First row: 1\n"+
+ " Last row: 18\n"+
+ " First column: A\n"+
+ " Last column: G\n"+
+ "Sheet 2:\n"+
+ " First row: 5\n"+
+ " Last row: 14\n"+
+ " First column: B\n"+
+ " Last column: E\n"+
+ "Sheet 3:\n"+
+ " First row: 1\n"+
+ " Last row: 1\n"+
+ " First column: A\n"+
+ " Last column: BA\n"+
+ "Sheet 4:\n"+
+ " First row: 1\n"+
+ " Last row: 1\n"+
+ " First column: A\n"+
+ " Last column: E\n"+
+ "Sheet 5:\n"+
+ " First row: 1\n"+
+ " Last row: 6\n"+
+ " First column: A\n"+
+ " Last column: E"
if OPENOFFICE
ext = ".ods"
expected = sprintf(expected_templ,ext)
oo = Openoffice.new(File.join("test","numbers1.ods"))
assert_equal expected, oo.info
@@ -1926,10 +2333,18 @@
ext = ".xls"
expected = sprintf(expected_templ,ext)
oo = Excel.new(File.join("test","numbers1.xls"))
assert_equal expected, oo.info
end
+ if GOOGLE
+ ext = ""
+ expected = sprintf(expected_templ,ext)
+ oo = Google.new(key_of("numbers1"))
+#$log.debug(expected)
+ #$log.debug expected.gsub(/test\/numbers1/,key_of("numbers1"))
+ assert_equal expected.gsub(/test\/numbers1/,key_of("numbers1")), oo.info
+ end
end
def test_bug_excel_numbers1_sheet5_last_row
oo = Excel.new(File.join("test","numbers1.xls"))
oo.default_sheet = "Tabelle1"
@@ -1967,8 +2382,38 @@
end
if EXCEL
assert_raise(IOError) {
oo = Excel.new(File.join('testnichtvorhanden','Bibelbund.xls'))
}
+ end
+ if GOOGLE
+after Date.new(2008,1,1) do
+ assert_raise(IOError) {
+ oo = Google.new(key_of('testnichtvorhanden'+'Bibelbund.ods'))
+ }
+end
+ end
+ end
+
+ def test_bug_cell_no_default_sheet
+ if GOOGLE
+ oo = Google.new(key_of("numbers1"))
+ assert_raise(ArgumentError) {
+ # should complain about not set default-sheet
+ #assert_equal 1.0, oo.cell('A',1)
+ value = oo.cell('A',1)
+ assert_equal "ganz rechts gehts noch wetier", oo.cell('A',1,"Sheet3")
+ }
+ end
+ end
+
+ def test_write_google
+# write.me: http://spreadsheets.google.com/ccc?key=ptu6bbahNZpY0N0RrxQbWdw&hl=en_GB
+ if GOOGLE
+ oo = Google.new('ptu6bbahNZpY0N0RrxQbWdw')
+ oo.default_sheet = oo.sheets.first
+ oo.set_value(1,1,"hello from the tests")
+ #oo.set_value(1,1,"sin(1)")
+ assert_equal "hello from the tests", oo.cell(1,1)
end
end
end # class