robust_excel_ole 1.31 → 1.32

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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog +20 -1
  3. data/README.rdoc +118 -18
  4. data/___dummy_workbook.xls +0 -0
  5. data/benchmarking/creek_example.rb +1 -1
  6. data/benchmarking/roo_example.rb +1 -1
  7. data/benchmarking/simple_xlsx_reader_example.rb +1 -1
  8. data/benchmarking/spreadsheet_example.rb +1 -1
  9. data/docs/README_excel.rdoc +16 -24
  10. data/docs/README_listobjects.rdoc +176 -0
  11. data/docs/README_open.rdoc +12 -12
  12. data/docs/README_ranges.rdoc +72 -55
  13. data/docs/README_save_close.rdoc +3 -3
  14. data/docs/README_sheet.rdoc +18 -13
  15. data/examples/example_ruby_library.rb +2 -2
  16. data/examples/introductory_examples/example_range.rb +2 -2
  17. data/examples/modifying_sheets/example_access_sheets_and_cells.rb +6 -6
  18. data/examples/modifying_sheets/example_add_names.rb +1 -1
  19. data/examples/modifying_sheets/example_concating.rb +1 -1
  20. data/examples/modifying_sheets/example_copying.rb +2 -2
  21. data/examples/modifying_sheets/example_listobjects.rb +86 -0
  22. data/examples/modifying_sheets/example_naming.rb +1 -1
  23. data/examples/modifying_sheets/example_ranges.rb +1 -1
  24. data/examples/open_save_close/example_control_to_excel.rb +1 -1
  25. data/examples/open_save_close/example_if_obstructed_closeifsaved.rb +1 -1
  26. data/examples/open_save_close/example_if_obstructed_save.rb +3 -3
  27. data/examples/open_save_close/example_if_unsaved_accept.rb +1 -1
  28. data/examples/open_save_close/example_if_unsaved_forget.rb +3 -3
  29. data/examples/open_save_close/example_if_unsaved_forget_more.rb +4 -4
  30. data/examples/open_save_close/example_read_only.rb +1 -1
  31. data/examples/open_save_close/example_simple.rb +1 -1
  32. data/examples/open_save_close/example_unobtrusively.rb +3 -3
  33. data/lib/robust_excel_ole/address_tool.rb +54 -44
  34. data/lib/robust_excel_ole/base.rb +4 -6
  35. data/lib/robust_excel_ole/bookstore.rb +2 -16
  36. data/lib/robust_excel_ole/cell.rb +16 -21
  37. data/lib/robust_excel_ole/excel.rb +131 -186
  38. data/lib/robust_excel_ole/general.rb +82 -55
  39. data/lib/robust_excel_ole/list_object.rb +182 -109
  40. data/lib/robust_excel_ole/list_row.rb +65 -38
  41. data/lib/robust_excel_ole/range.rb +125 -93
  42. data/lib/robust_excel_ole/range_owners.rb +52 -66
  43. data/lib/robust_excel_ole/version.rb +1 -1
  44. data/lib/robust_excel_ole/workbook.rb +168 -176
  45. data/lib/robust_excel_ole/worksheet.rb +177 -141
  46. data/robust_excel_ole.gemspec +4 -3
  47. data/spec/bookstore_spec.rb +2 -3
  48. data/spec/cell_spec.rb +9 -9
  49. data/spec/data/more_data/workbook.xls +0 -0
  50. data/spec/excel_spec.rb +132 -85
  51. data/spec/general_spec.rb +47 -15
  52. data/spec/list_object_spec.rb +258 -145
  53. data/spec/list_row_spec.rb +218 -0
  54. data/spec/range_spec.rb +76 -29
  55. data/spec/spec_helper.rb +15 -1
  56. data/spec/workbook_spec.rb +75 -34
  57. data/spec/workbook_specs/workbook_all_spec.rb +2 -1
  58. data/spec/workbook_specs/workbook_misc_spec.rb +20 -13
  59. data/spec/workbook_specs/workbook_open_spec.rb +47 -45
  60. data/spec/workbook_specs/workbook_save_spec.rb +21 -22
  61. data/spec/workbook_specs/workbook_sheet_spec.rb +3 -3
  62. data/spec/workbook_specs/workbook_unobtr_spec.rb +303 -303
  63. data/spec/worksheet_spec.rb +522 -318
  64. metadata +37 -2
data/spec/spec_helper.rb CHANGED
@@ -4,8 +4,22 @@ require 'tmpdir'
4
4
  require "fileutils"
5
5
  require_relative '../lib/robust_excel_ole'
6
6
 
7
+ class Object
8
+
9
+ def encode_value
10
+ if self.respond_to?(:gsub)
11
+ encode('utf-8')
12
+ elsif self.respond_to?(:keys)
13
+ transform_values!{ |value| value.respond_to?(:gsub) ? value.encode('utf-8') : value}
14
+ elsif self.respond_to?(:pop)
15
+ map{|v| v.respond_to?(:gsub) ? v.encode('utf-8') : v}
16
+ end
17
+ end
18
+
19
+ end
20
+
7
21
  # @private
8
- module RobustExcelOle::SpecHelpers
22
+ module RobustExcelOle::SpecHelpers
9
23
 
10
24
  def create_tmpdir
11
25
  tmpdir = Dir.mktmpdir
@@ -111,7 +111,7 @@ describe Workbook do
111
111
  book.should be_alive
112
112
  book.should be_a Workbook
113
113
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
114
- Excel.excels_number.should == 1
114
+ Excel.instance_count.should == 1
115
115
  end
116
116
  end
117
117
  end
@@ -467,10 +467,11 @@ describe Workbook do
467
467
  @key_sender.puts "{right}{enter}"
468
468
  @key_sender.puts "{right}{enter}"
469
469
  @key_sender.puts "{right}{enter}"
470
- expect{
470
+ #expect{
471
471
  Workbook.open(@simple_file, :if_unsaved => :alert)
472
- }.to raise_error(UnexpectedREOError)
472
+ # }.to raise_error(UnexpectedREOError)
473
473
  @book.should be_alive
474
+ @book.Saved.should be false
474
475
  end
475
476
 
476
477
  it "should open the new book and close the unsaved book, if user answers 'yes'" do
@@ -489,10 +490,11 @@ describe Workbook do
489
490
  @key_sender.puts "{right}{enter}"
490
491
  @key_sender.puts "{right}{enter}"
491
492
  @key_sender.puts "{right}{enter}"
492
- expect{
493
+ #expect{
493
494
  Workbook.open(@simple_file, :if_unsaved => :excel)
494
- }.to raise_error(UnexpectedREOError)
495
+ #}.to raise_error(UnexpectedREOError)
495
496
  @book.should be_alive
497
+ @book.Saved.should be false
496
498
  end
497
499
 
498
500
  end
@@ -634,15 +636,15 @@ describe Workbook do
634
636
  book.ReadOnly.should be true
635
637
  book.should be_alive
636
638
  sheet = book.sheet(1)
637
- old_cell_value = sheet[1,1].Value
638
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
639
+ old_cell_value = sheet[1,1]
640
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
639
641
  book.Saved.should be false
640
642
  new_book = Workbook.open(@simple_file1, :read_only => false, :if_unsaved => :forget)
641
643
  new_book.ReadOnly.should be false
642
644
  new_book.should be_alive
643
645
  book.should_not be_alive
644
646
  new_sheet = new_book.sheet(1)
645
- new_cell_value = new_sheet[1,1].Value
647
+ new_cell_value = new_sheet[1,1]
646
648
  new_cell_value.should == old_cell_value
647
649
  end
648
650
 
@@ -757,7 +759,7 @@ describe Workbook do
757
759
  Workbook.unobtrusively(@simple_file) do |book|
758
760
  book.should be_a Workbook
759
761
  sheet = book.sheet(1)
760
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
762
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
761
763
  book.should be_alive
762
764
  book.Saved.should be false
763
765
  end
@@ -838,18 +840,18 @@ describe Workbook do
838
840
  @book.Saved.should be true
839
841
  @book.should be_alive
840
842
  sheet = @book.sheet(1)
841
- old_cell_value = sheet[1,1].Value
843
+ old_cell_value = sheet[1,1]
842
844
  unobtrusively_ok?
843
845
  @book.Saved.should be true
844
846
  @book.should be_alive
845
847
  sheet = @book.sheet(1)
846
- sheet[1,1].Value.should_not == old_cell_value
848
+ sheet[1,1].should_not == old_cell_value
847
849
  end
848
850
 
849
851
  it "should let the unsaved book unsaved" do
850
852
  sheet = @book.sheet(1)
851
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
852
- old_cell_value = sheet[1,1].Value
853
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
854
+ old_cell_value = sheet[1,1]
853
855
  @book.Saved.should be false
854
856
  unobtrusively_ok?
855
857
  @book.should be_alive
@@ -857,7 +859,7 @@ describe Workbook do
857
859
  @book.close(:if_unsaved => :forget)
858
860
  @book2 = Workbook.open(@simple_file1)
859
861
  sheet2 = @book2.sheet(1)
860
- sheet2[1,1].Value.should_not == old_cell_value
862
+ sheet2[1,1].should_not == old_cell_value
861
863
  end
862
864
  end
863
865
 
@@ -873,21 +875,21 @@ describe Workbook do
873
875
 
874
876
  it "should let the closed book closed by default" do
875
877
  sheet = @book.sheet(1)
876
- old_cell_value = sheet[1,1].Value
878
+ old_cell_value = sheet[1,1]
877
879
  @book.close
878
880
  @book.should_not be_alive
879
881
  unobtrusively_ok?
880
882
  @book.should_not be_alive
881
883
  book2 = Workbook.open(@simple_file1)
882
884
  sheet = book2.sheet(1)
883
- sheet[1,1].Value.should_not == old_cell_value
885
+ sheet[1,1].should_not == old_cell_value
884
886
  end
885
887
 
886
888
  # The bold reanimation of the @book
887
889
  it "should use the excel of the book and keep open the book" do
888
890
  excel = Excel.new(:reuse => false)
889
891
  sheet = @book.sheet(1)
890
- old_cell_value = sheet[1,1].Value
892
+ old_cell_value = sheet[1,1]
891
893
  @book.close
892
894
  @book.should_not be_alive
893
895
  Workbook.unobtrusively(@simple_file1, :keep_open => true) do |book|
@@ -895,7 +897,7 @@ describe Workbook do
895
897
  book.excel.should == @book.excel
896
898
  book.excel.should_not == excel
897
899
  sheet = book.sheet(1)
898
- cell = sheet[1,1]
900
+ cell = sheet.range([1,1])
899
901
  sheet[1,1] = cell.Value == "foo" ? "bar" : "foo"
900
902
  book.Saved.should be false
901
903
  end
@@ -903,13 +905,13 @@ describe Workbook do
903
905
  @book.close
904
906
  new_book = Workbook.open(@simple_file1)
905
907
  sheet = new_book.sheet(1)
906
- sheet[1,1].Value.should_not == old_cell_value
908
+ sheet[1,1].should_not == old_cell_value
907
909
  end
908
910
 
909
911
  it "should use the excel of the book and keep open the book" do
910
912
  excel = Excel.new(:reuse => false)
911
913
  sheet = @book.sheet(1)
912
- old_cell_value = sheet[1,1].Value
914
+ old_cell_value = sheet[1,1]
913
915
  @book.close
914
916
  @book.should_not be_alive
915
917
  Workbook.unobtrusively(@simple_file1, :if_closed => :current) do |book|
@@ -918,14 +920,14 @@ describe Workbook do
918
920
  book.excel.should == @book.excel
919
921
  book.excel.should_not == excel
920
922
  sheet = book.sheet(1)
921
- cell = sheet[1,1]
923
+ cell = sheet.range([1,1])
922
924
  sheet[1,1] = cell.Value == "foo" ? "bar" : "foo"
923
925
  book.Saved.should be false
924
926
  end
925
927
  @book.should_not be_alive
926
928
  new_book = Workbook.open(@simple_file1)
927
929
  sheet = new_book.sheet(1)
928
- sheet[1,1].Value.should_not == old_cell_value
930
+ sheet[1,1].should_not == old_cell_value
929
931
  end
930
932
  end
931
933
 
@@ -992,7 +994,7 @@ describe Workbook do
992
994
  @book1.Readonly.should == false
993
995
  @book2.Readonly.should == true
994
996
  old_sheet = @book1.sheet(1)
995
- @old_cell_value = old_sheet[1,1].Value
997
+ @old_cell_value = old_sheet[1,1]
996
998
  @book1.close
997
999
  @book2.close
998
1000
  @book1.should_not be_alive
@@ -1005,13 +1007,13 @@ describe Workbook do
1005
1007
  book.excel.should_not == @book1.excel
1006
1008
  book.ReadOnly.should == false
1007
1009
  sheet = book.sheet(1)
1008
- cell = sheet[1,1]
1010
+ cell = sheet.range([1,1])
1009
1011
  sheet[1,1] = cell.Value == "foo" ? "bar" : "foo"
1010
1012
  book.Saved.should be false
1011
1013
  end
1012
1014
  new_book = Workbook.open(@simple_file1)
1013
1015
  sheet = new_book.sheet(1)
1014
- sheet[1,1].Value.should_not == @old_cell_value
1016
+ sheet[1,1].should_not == @old_cell_value
1015
1017
  end
1016
1018
 
1017
1019
  end
@@ -1024,7 +1026,7 @@ describe Workbook do
1024
1026
  before do
1025
1027
  @book = Workbook.open(@simple_file1)
1026
1028
  sheet = @book.sheet(1)
1027
- @old_cell_value = sheet[1,1].Value
1029
+ @old_cell_value = sheet[1,1]
1028
1030
  @book.close
1029
1031
  end
1030
1032
 
@@ -1034,14 +1036,14 @@ describe Workbook do
1034
1036
  book.should be_alive
1035
1037
  book.Saved.should be true
1036
1038
  sheet = book.sheet(1)
1037
- cell = sheet[1,1]
1039
+ cell = sheet.range([1,1])
1038
1040
  sheet[1,1] = cell.Value == "foo" ? "bar" : "foo"
1039
1041
  book.Saved.should be false
1040
1042
  book.excel.should == @book.excel
1041
1043
  end
1042
1044
  new_book = Workbook.open(@simple_file1, :visible => true)
1043
1045
  sheet = new_book.sheet(1)
1044
- sheet[1,1].Value.should == @old_cell_value
1046
+ sheet[1,1].should == @old_cell_value
1045
1047
  end
1046
1048
 
1047
1049
 
@@ -1049,7 +1051,7 @@ describe Workbook do
1049
1051
  new_excel = Excel.new(:reuse => false)
1050
1052
  Workbook.for_reading(@simple_file1, :if_closed => :new) do |book|
1051
1053
  sheet = book.sheet(1)
1052
- cell = sheet[1,1]
1054
+ cell = sheet.range([1,1])
1053
1055
  sheet[1,1] = cell.Value == "foo" ? "bar" : "foo"
1054
1056
  book.excel.should_not == @book.excel
1055
1057
  book.excel.should_not == new_excel
@@ -1058,19 +1060,19 @@ describe Workbook do
1058
1060
  end
1059
1061
  new_book = Workbook.open(@simple_file1, :visible => true)
1060
1062
  sheet = new_book.sheet(1)
1061
- sheet[1,1].Value.should == @old_cell_value
1063
+ sheet[1,1].should == @old_cell_value
1062
1064
  end
1063
1065
 
1064
1066
  it "should change the value" do
1065
1067
  Workbook.for_modifying(@simple_file1) do |book|
1066
1068
  sheet = book.sheet(1)
1067
- cell = sheet[1,1]
1069
+ cell = sheet.range([1,1])
1068
1070
  sheet[1,1] = cell.Value == "foo" ? "bar" : "foo"
1069
1071
  book.excel.should == @book.excel
1070
1072
  end
1071
1073
  new_book = Workbook.open(@simple_file1, :visible => true)
1072
1074
  sheet = new_book.sheet(1)
1073
- sheet[1,1].Value.should_not == @old_cell_value
1075
+ sheet[1,1].should_not == @old_cell_value
1074
1076
  end
1075
1077
  end
1076
1078
  end
@@ -1391,7 +1393,46 @@ describe Workbook do
1391
1393
  end
1392
1394
  end
1393
1395
 
1396
+ describe "#names" do
1397
+
1398
+ before do
1399
+ @book1 = Workbook.open(@another_simple_file)
1400
+ end
1401
+
1402
+ it "should yield defined names" do
1403
+ @book1.names.should == ["another", "Sheet1!another_formula", "empty", "Sheet1!firstcell",
1404
+ "firstrow", "formula", "four", "Sheet1!localname", "Sheet2!localname",
1405
+ "named_formula", "new", "one", "Sheet1!simple"]
1406
+ end
1407
+
1408
+ end
1409
+
1410
+ describe "each" do
1411
+
1412
+ before do
1413
+ @book = Workbook.open(@simple_file)
1414
+ end
1415
+
1416
+ it "should do each" do
1417
+ @book.each do |sheet|
1418
+ sheet.should be_kind_of Worksheet
1419
+ end
1420
+ end
1421
+
1422
+ it "should map" do
1423
+ @book.map{|s| s}.should == [@book.sheet(1), @book.sheet(2), @book.sheet(3)]
1424
+ end
1425
+
1426
+ it "should concatenate" do
1427
+ names = ""
1428
+ @book.each.with_index{|s,i| names << "#{s.name} #{i} " }
1429
+ names.should == "Sheet1 0 Sheet2 1 Sheet3 2 "
1430
+ end
1431
+
1432
+ end
1433
+
1394
1434
  describe 'access sheet' do
1435
+
1395
1436
  before do
1396
1437
  @book = Workbook.open(@simple_file)
1397
1438
  end
@@ -1435,7 +1476,7 @@ describe Workbook do
1435
1476
 
1436
1477
  it "should keep the save state 'unsaved'" do
1437
1478
  sheet = @book.sheet(1)
1438
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
1479
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
1439
1480
  @book.Saved.should be false
1440
1481
  @book.retain_saved do
1441
1482
  sheet = @book.sheet(1)
@@ -1447,7 +1488,7 @@ describe Workbook do
1447
1488
 
1448
1489
  it "should keep the save state 'unsaved' even when the workbook was saved before" do
1449
1490
  sheet = @book.sheet(1)
1450
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
1491
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
1451
1492
  @book.Saved.should be false
1452
1493
  @book.retain_saved do
1453
1494
  @book.save
@@ -9,5 +9,6 @@ require_relative 'workbook_close_spec'
9
9
  require_relative 'workbook_save_spec'
10
10
  require_relative 'workbook_misc_spec'
11
11
  require_relative 'workbook_sheet_spec'
12
- require_relative 'workbook_unobtr_spec'
12
+ require_relative 'workbook
13
+ _unobtr_spec'
13
14
  require_relative 'workbook_subclass_spec'
@@ -166,7 +166,7 @@ describe Workbook do
166
166
 
167
167
  it "should keep the save state 'unsaved'" do
168
168
  sheet = @book.sheet(1)
169
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
169
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
170
170
  @book.Saved.should be false
171
171
  @book.retain_saved do
172
172
  sheet = @book.sheet(1)
@@ -180,7 +180,7 @@ describe Workbook do
180
180
  @book.Saved.should be true
181
181
  @book.retain_saved do
182
182
  sheet = @book.sheet(1)
183
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
183
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
184
184
  @book.Saved.should be false
185
185
  end
186
186
  @book.Saved.should be true
@@ -188,7 +188,7 @@ describe Workbook do
188
188
 
189
189
  it "should keep the save state 'unsaved' even when the workbook was saved before" do
190
190
  sheet = @book.sheet(1)
191
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
191
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
192
192
  @book.Saved.should be false
193
193
  @book.retain_saved do
194
194
  @book.save
@@ -702,6 +702,13 @@ describe Workbook do
702
702
  @book1.namevalue_global("new").should == "bar"
703
703
  end
704
704
 
705
+ it "should set a range to a value with umlauts" do
706
+ @book1.sheet(1).add_name("lösung", [1,1])
707
+ @book1.namevalue_global("lösung").should == "foo"
708
+ @book1.set_namevalue_global("lösung","bar")
709
+ @book1.namevalue_global("lösung").should == "bar"
710
+ end
711
+
705
712
  it "should set value of a range via []=" do
706
713
  @book1["new"] = "bar"
707
714
  @book1.namevalue_global("new").should == "bar"
@@ -717,7 +724,7 @@ describe Workbook do
717
724
 
718
725
  it "should raise an error if name not defined and default value is not provided" do
719
726
  expect {
720
- @book1.namevalue_global("foo", :default => nil)
727
+ @book1.namevalue_global("foo", :default => 1)
721
728
  }.to_not raise_error
722
729
  expect {
723
730
  @book1.namevalue_global("foo", :default => :__not_provided)
@@ -784,7 +791,7 @@ describe Workbook do
784
791
 
785
792
  end
786
793
 
787
- describe "rename_range" do
794
+ describe "rename_name" do
788
795
 
789
796
  before do
790
797
  @book1 = Workbook.open(@another_simple_file)
@@ -795,11 +802,11 @@ describe Workbook do
795
802
  end
796
803
 
797
804
  it "should rename a range" do
798
- @book1.rename_range("four","five")
805
+ @book1.rename_name("four","five")
799
806
  @book1.namevalue_global("five").should == [[1,2],[3,4]]
800
807
  expect {
801
- @book1.rename_range("four","five")
802
- }.to raise_error(NameNotFound, /name "four" not in "another_workbook.xls"/)
808
+ @book1.rename_name("four","five")
809
+ }.to raise_error(NameNotFound, /name "four" not in/)
803
810
  end
804
811
  end
805
812
 
@@ -901,7 +908,7 @@ describe Workbook do
901
908
 
902
909
  it "should yield false for an unsaved book" do
903
910
  sheet = @book.sheet(1)
904
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
911
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
905
912
  @book.saved.should be false
906
913
  end
907
914
  end
@@ -1065,20 +1072,20 @@ describe Workbook do
1065
1072
  it "should bring a book to focus" do
1066
1073
  sheet = @book.sheet(2)
1067
1074
  sheet.Activate
1068
- sheet[2,3].Activate
1075
+ sheet.range([2,3]).Activate
1069
1076
  sheet2 = @book2.sheet(2)
1070
1077
  sheet2.Activate
1071
- sheet2[3,2].Activate
1078
+ sheet2.range([3,2]).Activate
1072
1079
  Excel.current.should == @book.excel
1073
1080
  @book2.focus
1074
1081
  @key_sender.puts "{a}{enter}"
1075
1082
  sleep 1
1076
- #sheet2[3,2].Value.should == "a"
1083
+ #sheet2.range([3,2]).Value.should == "a"
1077
1084
  #Excel.current.should == @book2.excel
1078
1085
  @book.focus
1079
1086
  @key_sender.puts "{a}{enter}"
1080
1087
  sleep 1
1081
- #sheet[2,3].Value.should == "a"
1088
+ #sheet.range([2,3]).Value.should == "a"
1082
1089
  Excel.current.should == @book.excel
1083
1090
  end
1084
1091
  end
@@ -138,7 +138,7 @@ describe Workbook do
138
138
  book.should be_alive
139
139
  book.should be_a Workbook
140
140
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
141
- Excel.excels_number.should == 1
141
+ Excel.instance_count.should == 1
142
142
  end
143
143
  end
144
144
  end
@@ -234,7 +234,7 @@ describe Workbook do
234
234
  book.should be_alive
235
235
  book.should be_a Workbook
236
236
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
237
- Excel.excels_number.should == 1
237
+ Excel.instance_count.should == 1
238
238
  end
239
239
  end
240
240
  end
@@ -451,7 +451,7 @@ describe Workbook do
451
451
  book.filename.should == @simple_file_network_path1
452
452
  book.Fullname.should == @ole_wb.Fullname
453
453
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
454
- Excel.excels_number.should == 1
454
+ Excel.instance_count.should == 1
455
455
  book.excel.Workbooks.Count.should == 1
456
456
  end
457
457
  end
@@ -467,7 +467,7 @@ describe Workbook do
467
467
  book.filename.should == @simple_file_hostname_share_path1.downcase
468
468
  book.Fullname.should == @ole_wb.Fullname
469
469
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
470
- Excel.excels_number.should == 1
470
+ Excel.instance_count.should == 1
471
471
  book.excel.Workbooks.Count.should == 1
472
472
  end
473
473
  end
@@ -523,7 +523,7 @@ describe Workbook do
523
523
  book.filename.should == @simple_file_network_path1
524
524
  book.Fullname.should == @ole_wb.Fullname
525
525
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
526
- Excel.excels_number.should == 1
526
+ Excel.instance_count.should == 1
527
527
  book.excel.Workbooks.Count.should == 1
528
528
  end
529
529
  end
@@ -539,7 +539,7 @@ describe Workbook do
539
539
  book.filename.should == @simple_file_hostname_share_path1.downcase
540
540
  book.Fullname.should == @ole_wb.Fullname
541
541
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
542
- Excel.excels_number.should == 1
542
+ Excel.instance_count.should == 1
543
543
  book.excel.Workbooks.Count.should == 1
544
544
  end
545
545
  end
@@ -637,11 +637,11 @@ describe Workbook do
637
637
 
638
638
  it "should connect to an unknown hostname share path workbook" do
639
639
  Workbook.open(@simple_file_hostname_share_path1) do |book|
640
- book.filename.should == @simple_file_hostname_share_path1.downcase
640
+ book.filename.should == @simple_file_network_path1
641
641
  book.should be_alive
642
642
  book.should be_a Workbook
643
643
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
644
- Excel.excels_number.should == 1
644
+ Excel.instance_count.should == 1
645
645
  book.excel.Workbooks.Count.should == 1
646
646
  end
647
647
  end
@@ -660,7 +660,7 @@ describe Workbook do
660
660
  book1 = Workbook.open(@simple_file1)
661
661
  book1.should be_alive
662
662
  book1.should be_a Workbook
663
- Excel.excels_number.should == 1
663
+ Excel.instance_count.should == 1
664
664
  book1.ReadOnly.should be false
665
665
  book1.excel.Visible.should be false
666
666
  book1.CheckCompatibility.should be true
@@ -679,7 +679,7 @@ describe Workbook do
679
679
  book1.should be_alive
680
680
  book1.should be_a Workbook
681
681
  book1.excel.should == excel1
682
- Excel.excels_number.should == 1
682
+ Excel.instance_count.should == 1
683
683
  book1.excel.Visible.should be false
684
684
  end
685
685
 
@@ -689,7 +689,7 @@ describe Workbook do
689
689
  book1.should be_alive
690
690
  book1.should be_a Workbook
691
691
  book1.excel.should == excel1
692
- Excel.excels_number.should == 1
692
+ Excel.instance_count.should == 1
693
693
  book1.excel.Visible.should be true
694
694
  end
695
695
 
@@ -699,7 +699,7 @@ describe Workbook do
699
699
  book1.should be_alive
700
700
  book1.should be_a Workbook
701
701
  book1.excel.should_not == excel1
702
- Excel.excels_number.should == 2
702
+ Excel.instance_count.should == 2
703
703
  end
704
704
 
705
705
  it "should set the options in a given known Excel" do
@@ -714,7 +714,7 @@ describe Workbook do
714
714
  book1 = Workbook.open(@simple_file1)
715
715
  book1.should be_alive
716
716
  book1.should be_a Workbook
717
- Excel.excels_number.should == 1
717
+ Excel.instance_count.should == 1
718
718
  book1.excel.ole_excel.Hwnd.should == ole_excel1.Hwnd
719
719
  end
720
720
 
@@ -735,7 +735,7 @@ describe Workbook do
735
735
  book.should be_alive
736
736
  book.should be_a Workbook
737
737
  book.excel.ole_excel.Hwnd.should == @ole_wb.Application.Hwnd
738
- Excel.excels_number.should == 1
738
+ Excel.instance_count.should == 1
739
739
  end
740
740
  end
741
741
 
@@ -815,7 +815,7 @@ describe Workbook do
815
815
  Workbook.open(@simple_file1) do |book|
816
816
  book.filename.should == @simple_file1
817
817
  book.excel.ole_excel.Hwnd.should == @ole_wb1.Application.Hwnd
818
- Excel.excels_number.should == 2
818
+ Excel.instance_count.should == 2
819
819
  end
820
820
  end
821
821
 
@@ -823,7 +823,7 @@ describe Workbook do
823
823
  Workbook.open(@different_file1) do |book|
824
824
  book.filename.should == @different_file1
825
825
  book.excel.ole_excel.Hwnd.should == @ole_wb2.Application.Hwnd
826
- Excel.excels_number.should == 2
826
+ Excel.instance_count.should == 2
827
827
  end
828
828
  end
829
829
 
@@ -912,9 +912,9 @@ describe Workbook do
912
912
  before do
913
913
  @book = Workbook.open(@simple_file1, :if_unsaved => :accept)
914
914
  sheet = @book.sheet(1)
915
- @old_value = sheet[1,1].Value
916
- sheet[1,1] = (sheet[1,1].Value == "foo" ? "bar" : "foo")
917
- @new_value = sheet[1,1].Value
915
+ @old_value = sheet[1,1]
916
+ sheet[1,1] = (sheet[1,1] == "foo" ? "bar" : "foo")
917
+ @new_value = sheet[1,1]
918
918
  @book.Saved.should be false
919
919
  end
920
920
 
@@ -928,7 +928,7 @@ describe Workbook do
928
928
  new_book.should be_alive
929
929
  new_book.Saved.should be false
930
930
  @book.Saved.should be false
931
- new_book.sheet(1)[1,1].Value.should == @new_value
931
+ new_book.sheet(1)[1,1].should == @new_value
932
932
  new_book.should == @book
933
933
  end
934
934
 
@@ -2599,7 +2599,7 @@ describe Workbook do
2599
2599
 
2600
2600
  it "should new_excel" do
2601
2601
  book = Workbook.open(@simple_file1)
2602
- book.sheet(1)[1,1].Value = "foo"
2602
+ book.sheet(1)[1,1] = "foo"
2603
2603
  book.Saved.should be false
2604
2604
  book2 = Workbook.open(@simple_file1, :if_unsaved => :new_excel)
2605
2605
  end
@@ -2667,10 +2667,11 @@ describe Workbook do
2667
2667
  @key_sender.puts "{right}{enter}"
2668
2668
  @key_sender.puts "{right}{enter}"
2669
2669
  @key_sender.puts "{right}{enter}"
2670
- expect{
2670
+ #expect{
2671
2671
  Workbook.open(@simple_file, :if_unsaved => :alert)
2672
- }.to raise_error(UnexpectedREOError)
2672
+ # }.to raise_error(UnexpectedREOError)
2673
2673
  @book.should be_alive
2674
+ @book.Saved.should be false
2674
2675
  end
2675
2676
 
2676
2677
  it "should not open the new book and not close the unsaved book, if user answers 'no'" do
@@ -2679,10 +2680,11 @@ describe Workbook do
2679
2680
  @key_sender.puts "{right}{enter}"
2680
2681
  @key_sender.puts "{right}{enter}"
2681
2682
  @key_sender.puts "{right}{enter}"
2682
- expect{
2683
+ #expect{
2683
2684
  Workbook.open(@simple_file, :if_unsaved => :excel)
2684
- }.to raise_error(UnexpectedREOError)
2685
+ #}.to raise_error(UnexpectedREOError)
2685
2686
  @book.should be_alive
2687
+ @book.Saved.should be false
2686
2688
  end
2687
2689
 
2688
2690
  end
@@ -2704,9 +2706,9 @@ describe Workbook do
2704
2706
  #@sheet_count = @book.ole_workbook.Worksheets.Count
2705
2707
  sheet = @book.sheet(1)
2706
2708
  #@book.add_sheet(@sheet, :as => 'a_name')
2707
- @old_value = sheet[1,1].Value
2708
- sheet[1,1] = (sheet[1,1].Value == "foo" ? "bar" : "foo")
2709
- @new_value = sheet[1,1].Value
2709
+ @old_value = sheet[1,1]
2710
+ sheet[1,1] = (sheet[1,1] == "foo" ? "bar" : "foo")
2711
+ @new_value = sheet[1,1]
2710
2712
  @book.Saved.should be false
2711
2713
  end
2712
2714
 
@@ -2727,7 +2729,7 @@ describe Workbook do
2727
2729
  new_book.should be_alive
2728
2730
  new_book.filename.downcase.should == @simple_file.downcase
2729
2731
  old_book = Workbook.open(@simple_file_other_path1, :if_obstructed => :forget)
2730
- old_book.sheet(1)[1,1].Value.should == @old_value
2732
+ old_book.sheet(1)[1,1].should == @old_value
2731
2733
  end
2732
2734
 
2733
2735
  it "should save the old book, close it, and open the new book, if :if_obstructed is :save" do
@@ -2736,7 +2738,7 @@ describe Workbook do
2736
2738
  new_book.should be_alive
2737
2739
  new_book.filename.downcase.should == @simple_file1.downcase
2738
2740
  old_book = Workbook.open(@simple_file_other_path1, :if_obstructed => :forget)
2739
- old_book.sheet(1)[1,1].Value.should == @new_value
2741
+ old_book.sheet(1)[1,1].should == @new_value
2740
2742
  #old_book.ole_workbook.Worksheets.Count.should == @sheet_count + 1
2741
2743
  old_book.close
2742
2744
  end
@@ -2752,7 +2754,7 @@ describe Workbook do
2752
2754
  new_book.should be_alive
2753
2755
  new_book.filename.downcase.should == @simple_file1.downcase
2754
2756
  old_book = Workbook.open(@simple_file_other_path1, :if_obstructed => :forget)
2755
- old_book.sheet(1)[1,1].Value.should == @new_value
2757
+ old_book.sheet(1)[1,1].should == @new_value
2756
2758
  #old_book.ole_workbook.Worksheets.Count.should == @sheet_count + 1
2757
2759
  old_book.close
2758
2760
  end
@@ -2767,11 +2769,11 @@ describe Workbook do
2767
2769
  new_book = Workbook.open(@simple_file1, :if_obstructed => :new_excel)
2768
2770
  @book.should be_alive
2769
2771
  @book.Saved.should be false
2770
- @book.sheet(1)[1,1].Value.should == @new_value
2772
+ @book.sheet(1)[1,1].should == @new_value
2771
2773
  new_book.should be_alive
2772
2774
  new_book.filename.should_not == @book.filename
2773
2775
  new_book.excel.should_not == @book.excel
2774
- new_book.sheet(1)[1,1].Value.should == @book.sheet(1)[1,1].Value
2776
+ new_book.sheet(1)[1,1].should == @book.sheet(1)[1,1]
2775
2777
  end
2776
2778
 
2777
2779
  it "should raise an error, if :if_obstructed is default" do
@@ -2917,8 +2919,8 @@ describe Workbook do
2917
2919
  book.ReadOnly.should be true
2918
2920
  book.should be_alive
2919
2921
  sheet = book.sheet(1)
2920
- old_cell_value = sheet[1,1].Value
2921
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
2922
+ old_cell_value = sheet[1,1]
2923
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
2922
2924
  book.Saved.should be false
2923
2925
  expect{
2924
2926
  new_book = Workbook.open(@simple_file1, :read_only => false, :if_unsaved => :accept)
@@ -2930,8 +2932,8 @@ describe Workbook do
2930
2932
  book.ReadOnly.should be false
2931
2933
  book.should be_alive
2932
2934
  sheet = book.sheet(1)
2933
- old_cell_value = sheet[1,1].Value
2934
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
2935
+ old_cell_value = sheet[1,1]
2936
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
2935
2937
  book.Saved.should be false
2936
2938
  expect{
2937
2939
  new_book = Workbook.open(@simple_file1, :read_only => true, :if_unsaved => :accept)
@@ -2943,8 +2945,8 @@ describe Workbook do
2943
2945
  book.ReadOnly.should be true
2944
2946
  book.should be_alive
2945
2947
  sheet = book.sheet(1)
2946
- old_cell_value = sheet[1,1].Value
2947
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
2948
+ old_cell_value = sheet[1,1]
2949
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
2948
2950
  book.Saved.should be false
2949
2951
  new_book = Workbook.open(@simple_file1, :read_only => false, :if_unsaved => :forget)
2950
2952
  new_book.ReadOnly.should be false
@@ -2952,7 +2954,7 @@ describe Workbook do
2952
2954
  book.should_not be_alive
2953
2955
  new_book.should_not == book
2954
2956
  new_sheet = new_book.sheet(1)
2955
- new_cell_value = new_sheet[1,1].Value
2957
+ new_cell_value = new_sheet[1,1]
2956
2958
  new_cell_value.should == old_cell_value
2957
2959
  end
2958
2960
 
@@ -2961,8 +2963,8 @@ describe Workbook do
2961
2963
  book.ReadOnly.should be false
2962
2964
  book.should be_alive
2963
2965
  sheet = book.sheet(1)
2964
- old_cell_value = sheet[1,1].Value
2965
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
2966
+ old_cell_value = sheet[1,1]
2967
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
2966
2968
  book.Saved.should be false
2967
2969
  expect{
2968
2970
  Workbook.open(@simple_file1, :read_only => true, :if_unsaved => :accept)
@@ -2974,13 +2976,13 @@ describe Workbook do
2974
2976
  book.ReadOnly.should be false
2975
2977
  book.should be_alive
2976
2978
  sheet = book.sheet(1)
2977
- old_cell_value = sheet[1,1].Value
2978
- sheet[1,1] = sheet[1,1].Value == "foo" ? "bar" : "foo"
2979
+ old_cell_value = sheet[1,1]
2980
+ sheet[1,1] = sheet[1,1] == "foo" ? "bar" : "foo"
2979
2981
  book.Saved.should be false
2980
2982
  new_book = Workbook.open(@simple_file1, :read_only => true, :if_unsaved => :save)
2981
2983
  new_book.ReadOnly.should be true
2982
2984
  new_sheet = new_book.sheet(1)
2983
- new_cell_value = new_sheet[1,1].Value
2985
+ new_cell_value = new_sheet[1,1]
2984
2986
  new_cell_value.should_not == old_cell_value
2985
2987
  end
2986
2988