spreadsheet 0.6.0

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.
Files changed (47) hide show
  1. data/GUIDE.txt +209 -0
  2. data/History.txt +8 -0
  3. data/LICENSE.txt +619 -0
  4. data/Manifest.txt +46 -0
  5. data/README.txt +54 -0
  6. data/Rakefile +15 -0
  7. data/lib/parseexcel.rb +27 -0
  8. data/lib/parseexcel/parseexcel.rb +75 -0
  9. data/lib/parseexcel/parser.rb +11 -0
  10. data/lib/spreadsheet.rb +79 -0
  11. data/lib/spreadsheet/datatypes.rb +99 -0
  12. data/lib/spreadsheet/encodings.rb +49 -0
  13. data/lib/spreadsheet/excel.rb +75 -0
  14. data/lib/spreadsheet/excel/error.rb +26 -0
  15. data/lib/spreadsheet/excel/internals.rb +322 -0
  16. data/lib/spreadsheet/excel/internals/biff5.rb +17 -0
  17. data/lib/spreadsheet/excel/internals/biff8.rb +19 -0
  18. data/lib/spreadsheet/excel/offset.rb +37 -0
  19. data/lib/spreadsheet/excel/reader.rb +798 -0
  20. data/lib/spreadsheet/excel/reader/biff5.rb +22 -0
  21. data/lib/spreadsheet/excel/reader/biff8.rb +168 -0
  22. data/lib/spreadsheet/excel/row.rb +67 -0
  23. data/lib/spreadsheet/excel/sst_entry.rb +45 -0
  24. data/lib/spreadsheet/excel/workbook.rb +76 -0
  25. data/lib/spreadsheet/excel/worksheet.rb +85 -0
  26. data/lib/spreadsheet/excel/writer.rb +1 -0
  27. data/lib/spreadsheet/excel/writer/biff8.rb +66 -0
  28. data/lib/spreadsheet/excel/writer/format.rb +270 -0
  29. data/lib/spreadsheet/excel/writer/workbook.rb +586 -0
  30. data/lib/spreadsheet/excel/writer/worksheet.rb +556 -0
  31. data/lib/spreadsheet/font.rb +86 -0
  32. data/lib/spreadsheet/format.rb +172 -0
  33. data/lib/spreadsheet/formula.rb +9 -0
  34. data/lib/spreadsheet/row.rb +87 -0
  35. data/lib/spreadsheet/workbook.rb +120 -0
  36. data/lib/spreadsheet/worksheet.rb +215 -0
  37. data/lib/spreadsheet/writer.rb +29 -0
  38. data/test/data/test_copy.xls +0 -0
  39. data/test/data/test_version_excel5.xls +0 -0
  40. data/test/data/test_version_excel95.xls +0 -0
  41. data/test/data/test_version_excel97.xls +0 -0
  42. data/test/excel/row.rb +29 -0
  43. data/test/font.rb +163 -0
  44. data/test/integration.rb +1021 -0
  45. data/test/workbook.rb +21 -0
  46. data/test/worksheet.rb +62 -0
  47. metadata +113 -0
data/test/workbook.rb ADDED
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env ruby
2
+ # TestWorkbook -- Spreadheet -- 24.09.2008 -- hwyss@ywesee.com
3
+
4
+ $: << File.expand_path('../lib', File.dirname(__FILE__))
5
+
6
+ require 'test/unit'
7
+ require 'spreadsheet'
8
+ require 'fileutils'
9
+ require 'stringio'
10
+
11
+ module Spreadsheet
12
+ class TestWorkbook < Test::Unit::TestCase
13
+ def setup
14
+ @io = StringIO.new ''
15
+ @book = Workbook.new
16
+ end
17
+ def test_writer__default_excel
18
+ assert_instance_of Excel::Writer::Workbook, @book.writer(@io)
19
+ end
20
+ end
21
+ end
data/test/worksheet.rb ADDED
@@ -0,0 +1,62 @@
1
+ #!/usr/bin/env ruby
2
+ # TestWorksheet -- Spreadheet -- 30.09.2008 -- hwyss@ywesee.com
3
+
4
+ $: << File.expand_path('../lib', File.dirname(__FILE__))
5
+
6
+ require 'test/unit'
7
+ require 'spreadsheet/worksheet'
8
+
9
+ module Spreadsheet
10
+ class TestWorksheet < Test::Unit::TestCase
11
+ def setup
12
+ @sheet = Worksheet.new
13
+ end
14
+ def test_cell_writer
15
+ assert_nil @sheet[0,0]
16
+ assert_equal 0, @sheet.column_count
17
+ assert_equal 0, @sheet.row_count
18
+ @sheet[0,0] = 'foo'
19
+ assert_equal 'foo', @sheet[0,0]
20
+ assert_equal 1, @sheet.column_count
21
+ assert_equal 1, @sheet.row_count
22
+ @sheet[1,0] = 'bar'
23
+ assert_equal 1, @sheet.column_count
24
+ assert_equal 2, @sheet.row_count
25
+ @sheet[0,1] = 'bar'
26
+ assert_equal 2, @sheet.column_count
27
+ assert_equal 2, @sheet.row_count
28
+ @sheet[1,0] = nil
29
+ assert_equal 2, @sheet.column_count
30
+ assert_equal 1, @sheet.row_count
31
+ @sheet[0,1] = nil
32
+ assert_equal 1, @sheet.column_count
33
+ assert_equal 1, @sheet.row_count
34
+ end
35
+ def test_column_count
36
+ assert_equal 0, @sheet.column_count
37
+ @sheet.replace_row 3, nil, nil, 1, 2, 'foo, bar'
38
+ assert_equal 3, @sheet.column_count
39
+ @sheet.replace_row 8, nil, 'something', 4, 7, nil
40
+ assert_equal 4, @sheet.column_count
41
+ @sheet.replace_row 5, 4, 'something', 4, 7, nil
42
+ assert_equal 5, @sheet.column_count
43
+ @sheet.replace_row 5, nil, 'something', 4, 7, nil
44
+ assert_equal 4, @sheet.column_count
45
+ @sheet.replace_row 3
46
+ assert_equal 3, @sheet.column_count
47
+ end
48
+ def test_row_count
49
+ assert_equal 0, @sheet.row_count
50
+ @sheet.replace_row 3, nil, nil, 1, 2, 'foo, bar'
51
+ assert_equal 1, @sheet.row_count
52
+ @sheet.replace_row 8, nil, 'something', 4, 7, nil
53
+ assert_equal 6, @sheet.row_count
54
+ @sheet.replace_row 5, 4, 'something', 4, 7, nil
55
+ assert_equal 6, @sheet.row_count
56
+ @sheet.replace_row 5, nil, 'something', 4, 7, nil
57
+ assert_equal 6, @sheet.row_count
58
+ @sheet.replace_row 3
59
+ assert_equal 4, @sheet.row_count
60
+ end
61
+ end
62
+ end
metadata ADDED
@@ -0,0 +1,113 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spreadsheet
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.0
5
+ platform: ruby
6
+ authors:
7
+ - Hannes Wyss
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-10-13 00:00:00 +02:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hoe
17
+ type: :development
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.8.0
24
+ version:
25
+ description: The Spreadsheet Library is designed to read and write Spreadsheet Documents. As of version 0.6.0, only Microsoft Excel compatible spreadsheets are supported. Spreadsheet is a combination/complete rewrite of the Spreadsheet::Excel Library by Daniel J. Berger and the ParseExcel Library by Hannes Wyss. Spreadsheet can read, write and modify Spreadsheet Documents.
26
+ email:
27
+ - hannes.wyss@gmail.com
28
+ executables: []
29
+
30
+ extensions: []
31
+
32
+ extra_rdoc_files:
33
+ - GUIDE.txt
34
+ - History.txt
35
+ - LICENSE.txt
36
+ - Manifest.txt
37
+ - README.txt
38
+ files:
39
+ - GUIDE.txt
40
+ - History.txt
41
+ - LICENSE.txt
42
+ - Manifest.txt
43
+ - README.txt
44
+ - Rakefile
45
+ - lib/parseexcel.rb
46
+ - lib/parseexcel/parseexcel.rb
47
+ - lib/parseexcel/parser.rb
48
+ - lib/spreadsheet.rb
49
+ - lib/spreadsheet/datatypes.rb
50
+ - lib/spreadsheet/encodings.rb
51
+ - lib/spreadsheet/excel.rb
52
+ - lib/spreadsheet/excel/error.rb
53
+ - lib/spreadsheet/excel/internals.rb
54
+ - lib/spreadsheet/excel/internals/biff5.rb
55
+ - lib/spreadsheet/excel/internals/biff8.rb
56
+ - lib/spreadsheet/excel/offset.rb
57
+ - lib/spreadsheet/excel/reader.rb
58
+ - lib/spreadsheet/excel/reader/biff5.rb
59
+ - lib/spreadsheet/excel/reader/biff8.rb
60
+ - lib/spreadsheet/excel/row.rb
61
+ - lib/spreadsheet/excel/sst_entry.rb
62
+ - lib/spreadsheet/excel/workbook.rb
63
+ - lib/spreadsheet/excel/worksheet.rb
64
+ - lib/spreadsheet/excel/writer.rb
65
+ - lib/spreadsheet/excel/writer/biff8.rb
66
+ - lib/spreadsheet/excel/writer/format.rb
67
+ - lib/spreadsheet/excel/writer/workbook.rb
68
+ - lib/spreadsheet/excel/writer/worksheet.rb
69
+ - lib/spreadsheet/font.rb
70
+ - lib/spreadsheet/format.rb
71
+ - lib/spreadsheet/formula.rb
72
+ - lib/spreadsheet/row.rb
73
+ - lib/spreadsheet/workbook.rb
74
+ - lib/spreadsheet/worksheet.rb
75
+ - lib/spreadsheet/writer.rb
76
+ - test/data/test_copy.xls
77
+ - test/data/test_version_excel5.xls
78
+ - test/data/test_version_excel95.xls
79
+ - test/data/test_version_excel97.xls
80
+ - test/excel/row.rb
81
+ - test/font.rb
82
+ - test/integration.rb
83
+ - test/workbook.rb
84
+ - test/worksheet.rb
85
+ has_rdoc: true
86
+ homepage: " http://spreadsheet.rubyforge.org"
87
+ post_install_message:
88
+ rdoc_options:
89
+ - --main
90
+ - README.txt
91
+ require_paths:
92
+ - lib
93
+ required_ruby_version: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: "0"
98
+ version:
99
+ required_rubygems_version: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: "0"
104
+ version:
105
+ requirements: []
106
+
107
+ rubyforge_project: spreadsheet
108
+ rubygems_version: 1.2.0
109
+ signing_key:
110
+ specification_version: 2
111
+ summary: The Spreadsheet Library is designed to read and write Spreadsheet Documents
112
+ test_files: []
113
+