sequel 3.20.0 → 3.21.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 (65) hide show
  1. data/CHANGELOG +32 -0
  2. data/MIT-LICENSE +1 -1
  3. data/README.rdoc +1 -1
  4. data/Rakefile +13 -3
  5. data/bin/sequel +18 -5
  6. data/doc/active_record.rdoc +4 -4
  7. data/doc/opening_databases.rdoc +38 -1
  8. data/doc/release_notes/3.21.0.txt +87 -0
  9. data/doc/validations.rdoc +2 -2
  10. data/lib/sequel/adapters/informix.rb +1 -1
  11. data/lib/sequel/adapters/jdbc/h2.rb +2 -5
  12. data/lib/sequel/adapters/jdbc/mssql.rb +1 -4
  13. data/lib/sequel/adapters/jdbc/mysql.rb +1 -4
  14. data/lib/sequel/adapters/jdbc/postgresql.rb +1 -6
  15. data/lib/sequel/adapters/jdbc/sqlite.rb +2 -8
  16. data/lib/sequel/adapters/shared/mssql.rb +8 -0
  17. data/lib/sequel/adapters/shared/mysql.rb +23 -3
  18. data/lib/sequel/adapters/shared/oracle.rb +2 -2
  19. data/lib/sequel/adapters/tinytds.rb +125 -0
  20. data/lib/sequel/database/connecting.rb +1 -1
  21. data/lib/sequel/database/schema_methods.rb +37 -5
  22. data/lib/sequel/dataset/sql.rb +6 -6
  23. data/lib/sequel/extensions/schema_dumper.rb +1 -1
  24. data/lib/sequel/model/base.rb +50 -0
  25. data/lib/sequel/model/plugins.rb +0 -55
  26. data/lib/sequel/plugins/association_autoreloading.rb +48 -0
  27. data/lib/sequel/plugins/validation_class_methods.rb +6 -5
  28. data/lib/sequel/plugins/validation_helpers.rb +2 -2
  29. data/lib/sequel/version.rb +1 -1
  30. data/spec/adapters/firebird_spec.rb +6 -6
  31. data/spec/adapters/informix_spec.rb +2 -2
  32. data/spec/adapters/mssql_spec.rb +18 -13
  33. data/spec/adapters/mysql_spec.rb +47 -20
  34. data/spec/adapters/oracle_spec.rb +40 -4
  35. data/spec/adapters/postgres_spec.rb +14 -14
  36. data/spec/adapters/spec_helper.rb +1 -1
  37. data/spec/adapters/sqlite_spec.rb +8 -8
  38. data/spec/core/connection_pool_spec.rb +18 -17
  39. data/spec/core/core_sql_spec.rb +18 -18
  40. data/spec/core/database_spec.rb +62 -62
  41. data/spec/core/dataset_spec.rb +105 -92
  42. data/spec/core/expression_filters_spec.rb +2 -2
  43. data/spec/core/schema_spec.rb +6 -6
  44. data/spec/core/version_spec.rb +1 -1
  45. data/spec/extensions/association_autoreloading_spec.rb +94 -0
  46. data/spec/extensions/blank_spec.rb +6 -6
  47. data/spec/extensions/looser_typecasting_spec.rb +1 -1
  48. data/spec/extensions/migration_spec.rb +6 -6
  49. data/spec/extensions/pagination_spec.rb +2 -2
  50. data/spec/extensions/pretty_table_spec.rb +2 -2
  51. data/spec/extensions/query_spec.rb +2 -2
  52. data/spec/extensions/schema_dumper_spec.rb +2 -1
  53. data/spec/extensions/single_table_inheritance_spec.rb +1 -1
  54. data/spec/extensions/sql_expr_spec.rb +1 -1
  55. data/spec/extensions/string_date_time_spec.rb +4 -4
  56. data/spec/extensions/validation_class_methods_spec.rb +2 -2
  57. data/spec/integration/dataset_test.rb +8 -3
  58. data/spec/integration/plugin_test.rb +5 -5
  59. data/spec/integration/prepared_statement_test.rb +1 -1
  60. data/spec/integration/schema_test.rb +7 -0
  61. data/spec/integration/spec_helper.rb +14 -1
  62. data/spec/integration/timezone_test.rb +4 -4
  63. data/spec/integration/type_test.rb +1 -1
  64. data/spec/model/model_spec.rb +3 -3
  65. metadata +9 -4
@@ -1,6 +1,6 @@
1
1
  require File.join(File.dirname(File.expand_path(__FILE__)), "spec_helper")
2
2
 
3
- context "Dataset" do
3
+ describe "Dataset" do
4
4
  before do
5
5
  @dataset = Sequel::Dataset.new("db")
6
6
  end
@@ -62,7 +62,7 @@ context "Dataset" do
62
62
  end
63
63
  end
64
64
 
65
- context "Dataset" do
65
+ describe "Dataset" do
66
66
  before do
67
67
  @dataset = Sequel::Dataset.new("db")
68
68
  end
@@ -104,7 +104,7 @@ context "Dataset" do
104
104
  end
105
105
  end
106
106
 
107
- context "Dataset#clone" do
107
+ describe "Dataset#clone" do
108
108
  before do
109
109
  @dataset = Sequel::Dataset.new(nil).from(:items)
110
110
  end
@@ -159,7 +159,7 @@ context "Dataset#clone" do
159
159
  end
160
160
  end
161
161
 
162
- context "Dataset#==" do
162
+ describe "Dataset#==" do
163
163
  before do
164
164
  @db = MockDatabase.new
165
165
  @h = {}
@@ -184,7 +184,7 @@ context "Dataset#==" do
184
184
  end
185
185
  end
186
186
 
187
- context "Dataset#hash" do
187
+ describe "Dataset#hash" do
188
188
  before do
189
189
  @db = MockDatabase.new
190
190
  @h = {}
@@ -211,7 +211,7 @@ context "Dataset#hash" do
211
211
  end
212
212
  end
213
213
 
214
- context "A simple dataset" do
214
+ describe "A simple dataset" do
215
215
  before do
216
216
  @dataset = Sequel::Dataset.new(nil).from(:test)
217
217
  end
@@ -293,7 +293,7 @@ context "A simple dataset" do
293
293
  end
294
294
  end
295
295
 
296
- context "A dataset with multiple tables in its FROM clause" do
296
+ describe "A dataset with multiple tables in its FROM clause" do
297
297
  before do
298
298
  @dataset = Sequel::Dataset.new(nil).from(:t1, :t2)
299
299
  end
@@ -319,7 +319,7 @@ context "A dataset with multiple tables in its FROM clause" do
319
319
  end
320
320
  end
321
321
 
322
- context "Dataset#unused_table_alias" do
322
+ describe "Dataset#unused_table_alias" do
323
323
  before do
324
324
  @ds = Sequel::Dataset.new(nil).from(:test)
325
325
  end
@@ -346,7 +346,7 @@ context "Dataset#unused_table_alias" do
346
346
  end
347
347
  end
348
348
 
349
- context "Dataset#exists" do
349
+ describe "Dataset#exists" do
350
350
  before do
351
351
  @ds1 = Sequel::Dataset.new(nil).from(:test)
352
352
  @ds2 = @ds1.filter(:price.sql_number < 100)
@@ -366,7 +366,7 @@ context "Dataset#exists" do
366
366
  end
367
367
  end
368
368
 
369
- context "Dataset#where" do
369
+ describe "Dataset#where" do
370
370
  before do
371
371
  @dataset = Sequel::Dataset.new(nil).from(:test)
372
372
  @d1 = @dataset.where(:region => 'Asia')
@@ -647,7 +647,7 @@ context "Dataset#where" do
647
647
  end
648
648
  end
649
649
 
650
- context "Dataset#or" do
650
+ describe "Dataset#or" do
651
651
  before do
652
652
  @dataset = Sequel::Dataset.new(nil).from(:test)
653
653
  @d1 = @dataset.where(:x => 1)
@@ -688,7 +688,7 @@ context "Dataset#or" do
688
688
  end
689
689
  end
690
690
 
691
- context "Dataset#and" do
691
+ describe "Dataset#and" do
692
692
  before do
693
693
  @dataset = Sequel::Dataset.new(nil).from(:test)
694
694
  @d1 = @dataset.where(:x => 1)
@@ -728,7 +728,7 @@ context "Dataset#and" do
728
728
  end
729
729
  end
730
730
 
731
- context "Dataset#exclude" do
731
+ describe "Dataset#exclude" do
732
732
  before do
733
733
  @dataset = Sequel::Dataset.new(nil).from(:test)
734
734
  end
@@ -772,7 +772,7 @@ context "Dataset#exclude" do
772
772
  end
773
773
  end
774
774
 
775
- context "Dataset#invert" do
775
+ describe "Dataset#invert" do
776
776
  before do
777
777
  @d = Sequel::Dataset.new(nil).from(:test)
778
778
  end
@@ -790,7 +790,7 @@ context "Dataset#invert" do
790
790
  end
791
791
  end
792
792
 
793
- context "Dataset#having" do
793
+ describe "Dataset#having" do
794
794
  before do
795
795
  @dataset = Sequel::Dataset.new(nil).from(:test)
796
796
  @grouped = @dataset.group(:region).select(:region, :sum.sql_function(:population), :avg.sql_function(:gdp))
@@ -821,7 +821,7 @@ context "Dataset#having" do
821
821
  end
822
822
  end
823
823
 
824
- context "a grouped dataset" do
824
+ describe "a grouped dataset" do
825
825
  before do
826
826
  @dataset = Sequel::Dataset.new(nil).from(:test).group(:type_id)
827
827
  end
@@ -854,7 +854,7 @@ context "a grouped dataset" do
854
854
  end
855
855
  end
856
856
 
857
- context "Dataset#group_by" do
857
+ describe "Dataset#group_by" do
858
858
  before do
859
859
  @dataset = Sequel::Dataset.new(nil).from(:test).group_by(:type_id)
860
860
  end
@@ -896,7 +896,7 @@ context "Dataset#group_by" do
896
896
  end
897
897
  end
898
898
 
899
- context "Dataset#as" do
899
+ describe "Dataset#as" do
900
900
  specify "should set up an alias" do
901
901
  dataset = Sequel::Dataset.new(nil).from(:test)
902
902
  dataset.select(dataset.limit(1).select(:name).as(:n)).sql.should == \
@@ -904,7 +904,7 @@ context "Dataset#as" do
904
904
  end
905
905
  end
906
906
 
907
- context "Dataset#literal" do
907
+ describe "Dataset#literal" do
908
908
  before do
909
909
  @dataset = Sequel::Dataset.new(nil).from(:test)
910
910
  end
@@ -927,22 +927,23 @@ context "Dataset#literal" do
927
927
  @dataset.literal(1).should == "1"
928
928
  @dataset.literal(1.5).should == "1.5"
929
929
  end
930
-
930
+
931
931
  specify "should literalize nil as NULL" do
932
932
  @dataset.literal(nil).should == "NULL"
933
933
  end
934
-
934
+
935
935
  specify "should literalize an array properly" do
936
936
  @dataset.literal([]).should == "(NULL)"
937
937
  @dataset.literal([1, 'abc', 3]).should == "(1, 'abc', 3)"
938
938
  @dataset.literal([1, "a'b''c", 3]).should == "(1, 'a''b''''c', 3)"
939
939
  end
940
-
940
+
941
941
  specify "should literalize symbols as column references" do
942
942
  @dataset.literal(:name).should == "name"
943
943
  @dataset.literal(:items__name).should == "items.name"
944
+ @dataset.literal(:"items__na#m$e").should == "items.na#m$e"
944
945
  end
945
-
946
+
946
947
  specify "should call sql_literal with dataset on type if not natively supported and the object responds to it" do
947
948
  @a = Class.new do
948
949
  def sql_literal(ds)
@@ -1058,7 +1059,7 @@ context "Dataset#literal" do
1058
1059
  end
1059
1060
  end
1060
1061
 
1061
- context "Dataset#from" do
1062
+ describe "Dataset#from" do
1062
1063
  before do
1063
1064
  @dataset = Sequel::Dataset.new(nil)
1064
1065
  end
@@ -1114,14 +1115,26 @@ context "Dataset#from" do
1114
1115
  specify "should accept :schema__table___alias symbol format" do
1115
1116
  @dataset.from(:abc__def).select_sql.should ==
1116
1117
  "SELECT * FROM abc.def"
1118
+ @dataset.from(:a_b__c).select_sql.should ==
1119
+ "SELECT * FROM a_b.c"
1120
+ @dataset.from(:'#__#').select_sql.should ==
1121
+ 'SELECT * FROM #.#'
1117
1122
  @dataset.from(:abc__def___d).select_sql.should ==
1118
1123
  "SELECT * FROM abc.def AS d"
1124
+ @dataset.from(:a_b__d_e___f_g).select_sql.should ==
1125
+ "SELECT * FROM a_b.d_e AS f_g"
1126
+ @dataset.from(:'#__#___#').select_sql.should ==
1127
+ 'SELECT * FROM #.# AS #'
1119
1128
  @dataset.from(:abc___def).select_sql.should ==
1120
1129
  "SELECT * FROM abc AS def"
1130
+ @dataset.from(:a_b___c_d).select_sql.should ==
1131
+ "SELECT * FROM a_b AS c_d"
1132
+ @dataset.from(:'#___#').select_sql.should ==
1133
+ 'SELECT * FROM # AS #'
1121
1134
  end
1122
1135
  end
1123
1136
 
1124
- context "Dataset#select" do
1137
+ describe "Dataset#select" do
1125
1138
  before do
1126
1139
  @d = Sequel::Dataset.new(nil).from(:test)
1127
1140
  end
@@ -1185,7 +1198,7 @@ context "Dataset#select" do
1185
1198
  end
1186
1199
  end
1187
1200
 
1188
- context "Dataset#select_all" do
1201
+ describe "Dataset#select_all" do
1189
1202
  before do
1190
1203
  @d = Sequel::Dataset.new(nil).from(:test)
1191
1204
  end
@@ -1199,7 +1212,7 @@ context "Dataset#select_all" do
1199
1212
  end
1200
1213
  end
1201
1214
 
1202
- context "Dataset#select_more" do
1215
+ describe "Dataset#select_more" do
1203
1216
  before do
1204
1217
  @d = Sequel::Dataset.new(nil).from(:test)
1205
1218
  end
@@ -1221,7 +1234,7 @@ context "Dataset#select_more" do
1221
1234
  end
1222
1235
  end
1223
1236
 
1224
- context "Dataset#select_append" do
1237
+ describe "Dataset#select_append" do
1225
1238
  before do
1226
1239
  @d = Sequel::Dataset.new(nil).from(:test)
1227
1240
  end
@@ -1243,7 +1256,7 @@ context "Dataset#select_append" do
1243
1256
  end
1244
1257
  end
1245
1258
 
1246
- context "Dataset#order" do
1259
+ describe "Dataset#order" do
1247
1260
  before do
1248
1261
  @dataset = Sequel::Dataset.new(nil).from(:test)
1249
1262
  end
@@ -1298,31 +1311,31 @@ context "Dataset#order" do
1298
1311
  end
1299
1312
  end
1300
1313
 
1301
- context "Dataset#unfiltered" do
1314
+ describe "Dataset#unfiltered" do
1302
1315
  specify "should remove filtering from the dataset" do
1303
1316
  Sequel::Dataset.new(nil).from(:test).filter(:score=>1).unfiltered.sql.should == 'SELECT * FROM test'
1304
1317
  end
1305
1318
  end
1306
1319
 
1307
- context "Dataset#unlimited" do
1320
+ describe "Dataset#unlimited" do
1308
1321
  specify "should remove limit and offset from the dataset" do
1309
1322
  Sequel::Dataset.new(nil).from(:test).limit(1, 2).unlimited.sql.should == 'SELECT * FROM test'
1310
1323
  end
1311
1324
  end
1312
1325
 
1313
- context "Dataset#ungrouped" do
1326
+ describe "Dataset#ungrouped" do
1314
1327
  specify "should remove group and having clauses from the dataset" do
1315
1328
  Sequel::Dataset.new(nil).from(:test).group(:a).having(:b).ungrouped.sql.should == 'SELECT * FROM test'
1316
1329
  end
1317
1330
  end
1318
1331
 
1319
- context "Dataset#unordered" do
1332
+ describe "Dataset#unordered" do
1320
1333
  specify "should remove ordering from the dataset" do
1321
1334
  Sequel::Dataset.new(nil).from(:test).order(:name).unordered.sql.should == 'SELECT * FROM test'
1322
1335
  end
1323
1336
  end
1324
1337
 
1325
- context "Dataset#with_sql" do
1338
+ describe "Dataset#with_sql" do
1326
1339
  before do
1327
1340
  @dataset = Sequel::Dataset.new(nil).from(:test)
1328
1341
  end
@@ -1344,7 +1357,7 @@ context "Dataset#with_sql" do
1344
1357
  end
1345
1358
  end
1346
1359
 
1347
- context "Dataset#order_by" do
1360
+ describe "Dataset#order_by" do
1348
1361
  before do
1349
1362
  @dataset = Sequel::Dataset.new(nil).from(:test)
1350
1363
  end
@@ -1375,7 +1388,7 @@ context "Dataset#order_by" do
1375
1388
  end
1376
1389
  end
1377
1390
 
1378
- context "Dataset#order_more and order_append" do
1391
+ describe "Dataset#order_more and order_append" do
1379
1392
  before do
1380
1393
  @dataset = Sequel::Dataset.new(nil).from(:test)
1381
1394
  end
@@ -1398,7 +1411,7 @@ context "Dataset#order_more and order_append" do
1398
1411
  end
1399
1412
  end
1400
1413
 
1401
- context "Dataset#order_prepend" do
1414
+ describe "Dataset#order_prepend" do
1402
1415
  before do
1403
1416
  @dataset = Sequel::Dataset.new(nil).from(:test)
1404
1417
  end
@@ -1419,7 +1432,7 @@ context "Dataset#order_prepend" do
1419
1432
  end
1420
1433
  end
1421
1434
 
1422
- context "Dataset#reverse_order" do
1435
+ describe "Dataset#reverse_order" do
1423
1436
  before do
1424
1437
  @dataset = Sequel::Dataset.new(nil).from(:test)
1425
1438
  end
@@ -1467,7 +1480,7 @@ context "Dataset#reverse_order" do
1467
1480
  end
1468
1481
  end
1469
1482
 
1470
- context "Dataset#limit" do
1483
+ describe "Dataset#limit" do
1471
1484
  before do
1472
1485
  @dataset = Sequel::Dataset.new(nil).from(:test)
1473
1486
  end
@@ -1521,7 +1534,7 @@ context "Dataset#limit" do
1521
1534
  end
1522
1535
  end
1523
1536
 
1524
- context "Dataset#naked" do
1537
+ describe "Dataset#naked" do
1525
1538
  before do
1526
1539
  @d1 = Sequel::Dataset.new(nil, {1 => 2, 3 => 4})
1527
1540
  @d2 = @d1.clone
@@ -1534,7 +1547,7 @@ context "Dataset#naked" do
1534
1547
  end
1535
1548
  end
1536
1549
 
1537
- context "Dataset#qualified_column_name" do
1550
+ describe "Dataset#qualified_column_name" do
1538
1551
  before do
1539
1552
  @dataset = Sequel::Dataset.new(nil).from(:test)
1540
1553
  end
@@ -1569,7 +1582,7 @@ class DummyDataset < Sequel::Dataset
1569
1582
  end
1570
1583
  end
1571
1584
 
1572
- context "Dataset#map" do
1585
+ describe "Dataset#map" do
1573
1586
  before do
1574
1587
  @d = DummyDataset.new(nil).from(:items)
1575
1588
  end
@@ -1587,7 +1600,7 @@ context "Dataset#map" do
1587
1600
  end
1588
1601
  end
1589
1602
 
1590
- context "Dataset#to_hash" do
1603
+ describe "Dataset#to_hash" do
1591
1604
  before do
1592
1605
  @d = DummyDataset.new(nil).from(:items)
1593
1606
  end
@@ -1603,7 +1616,7 @@ context "Dataset#to_hash" do
1603
1616
  end
1604
1617
  end
1605
1618
 
1606
- context "Dataset#distinct" do
1619
+ describe "Dataset#distinct" do
1607
1620
  before do
1608
1621
  @db = MockDatabase.new
1609
1622
  @dataset = @db[:test].select(:name)
@@ -1630,7 +1643,7 @@ context "Dataset#distinct" do
1630
1643
  end
1631
1644
  end
1632
1645
 
1633
- context "Dataset#count" do
1646
+ describe "Dataset#count" do
1634
1647
  before do
1635
1648
  @c = Class.new(Sequel::Dataset) do
1636
1649
  def self.sql
@@ -1692,7 +1705,7 @@ context "Dataset#count" do
1692
1705
  end
1693
1706
 
1694
1707
 
1695
- context "Dataset#group_and_count" do
1708
+ describe "Dataset#group_and_count" do
1696
1709
  before do
1697
1710
  @c = Class.new(Sequel::Dataset) do
1698
1711
  def self.sql
@@ -1742,7 +1755,7 @@ context "Dataset#group_and_count" do
1742
1755
  end
1743
1756
  end
1744
1757
 
1745
- context "Dataset#empty?" do
1758
+ describe "Dataset#empty?" do
1746
1759
  specify "should return true if records exist in the dataset" do
1747
1760
  @c = Class.new(Sequel::Dataset) do
1748
1761
  def self.sql
@@ -1761,7 +1774,7 @@ context "Dataset#empty?" do
1761
1774
  end
1762
1775
  end
1763
1776
 
1764
- context "Dataset#first_source_alias" do
1777
+ describe "Dataset#first_source_alias" do
1765
1778
  before do
1766
1779
  @ds = Sequel::Dataset.new(nil)
1767
1780
  end
@@ -1791,7 +1804,7 @@ context "Dataset#first_source_alias" do
1791
1804
  end
1792
1805
  end
1793
1806
 
1794
- context "Dataset#first_source_table" do
1807
+ describe "Dataset#first_source_table" do
1795
1808
  before do
1796
1809
  @ds = Sequel::Dataset.new(nil)
1797
1810
  end
@@ -1814,7 +1827,7 @@ context "Dataset#first_source_table" do
1814
1827
  end
1815
1828
  end
1816
1829
 
1817
- context "Dataset#from_self" do
1830
+ describe "Dataset#from_self" do
1818
1831
  before do
1819
1832
  @ds = Sequel::Dataset.new(nil).from(:test).select(:name).limit(1)
1820
1833
  end
@@ -1842,7 +1855,7 @@ context "Dataset#from_self" do
1842
1855
 
1843
1856
  end
1844
1857
 
1845
- context "Dataset#join_table" do
1858
+ describe "Dataset#join_table" do
1846
1859
  before do
1847
1860
  @d = MockDataset.new(nil).from(:items)
1848
1861
  @d.quote_identifiers = true
@@ -2156,7 +2169,7 @@ context "Dataset#join_table" do
2156
2169
  end
2157
2170
  end
2158
2171
 
2159
- context "Dataset#[]=" do
2172
+ describe "Dataset#[]=" do
2160
2173
  before do
2161
2174
  c = Class.new(Sequel::Dataset) do
2162
2175
  def last_sql
@@ -2177,7 +2190,7 @@ context "Dataset#[]=" do
2177
2190
  end
2178
2191
  end
2179
2192
 
2180
- context "Dataset#set" do
2193
+ describe "Dataset#set" do
2181
2194
  before do
2182
2195
  c = Class.new(Sequel::Dataset) do
2183
2196
  def last_sql
@@ -2199,7 +2212,7 @@ context "Dataset#set" do
2199
2212
  end
2200
2213
 
2201
2214
 
2202
- context "Dataset#insert_multiple" do
2215
+ describe "Dataset#insert_multiple" do
2203
2216
  before do
2204
2217
  c = Class.new(Sequel::Dataset) do
2205
2218
  attr_reader :inserts
@@ -2224,7 +2237,7 @@ context "Dataset#insert_multiple" do
2224
2237
  end
2225
2238
  end
2226
2239
 
2227
- context "Dataset aggregate methods" do
2240
+ describe "Dataset aggregate methods" do
2228
2241
  before do
2229
2242
  c = Class.new(Sequel::Dataset) do
2230
2243
  def fetch_rows(sql)
@@ -2263,7 +2276,7 @@ context "Dataset aggregate methods" do
2263
2276
  end
2264
2277
  end
2265
2278
 
2266
- context "Dataset#range" do
2279
+ describe "Dataset#range" do
2267
2280
  before do
2268
2281
  c = Class.new(Sequel::Dataset) do
2269
2282
  class_variable_set(:@@sql, nil)
@@ -2296,7 +2309,7 @@ context "Dataset#range" do
2296
2309
  end
2297
2310
  end
2298
2311
 
2299
- context "Dataset#interval" do
2312
+ describe "Dataset#interval" do
2300
2313
  before do
2301
2314
  c = Class.new(Sequel::Dataset) do
2302
2315
  class_variable_set(:@@sql, nil)
@@ -2329,7 +2342,7 @@ context "Dataset#interval" do
2329
2342
  end
2330
2343
  end
2331
2344
 
2332
- context "Dataset #first and #last" do
2345
+ describe "Dataset #first and #last" do
2333
2346
  before do
2334
2347
  @c = Class.new(Sequel::Dataset) do
2335
2348
  def each(&block)
@@ -2392,7 +2405,7 @@ context "Dataset #first and #last" do
2392
2405
  end
2393
2406
  end
2394
2407
 
2395
- context "Dataset compound operations" do
2408
+ describe "Dataset compound operations" do
2396
2409
  before do
2397
2410
  @a = Sequel::Dataset.new(nil).from(:a).filter(:z => 1)
2398
2411
  @b = Sequel::Dataset.new(nil).from(:b).filter(:z => 2)
@@ -2506,7 +2519,7 @@ context "Dataset compound operations" do
2506
2519
 
2507
2520
  end
2508
2521
 
2509
- context "Dataset#[]" do
2522
+ describe "Dataset#[]" do
2510
2523
  before do
2511
2524
  @c = Class.new(Sequel::Dataset) do
2512
2525
  class_variable_set(:@@last_dataset, nil)
@@ -2532,7 +2545,7 @@ context "Dataset#[]" do
2532
2545
  end
2533
2546
  end
2534
2547
 
2535
- context "Dataset#single_record" do
2548
+ describe "Dataset#single_record" do
2536
2549
  before do
2537
2550
  @c = Class.new(Sequel::Dataset) do
2538
2551
  def fetch_rows(sql)
@@ -2556,7 +2569,7 @@ context "Dataset#single_record" do
2556
2569
  end
2557
2570
  end
2558
2571
 
2559
- context "Dataset#single_value" do
2572
+ describe "Dataset#single_value" do
2560
2573
  before do
2561
2574
  @c = Class.new(Sequel::Dataset) do
2562
2575
  def fetch_rows(sql)
@@ -2585,7 +2598,7 @@ context "Dataset#single_value" do
2585
2598
  end
2586
2599
  end
2587
2600
 
2588
- context "Dataset#get" do
2601
+ describe "Dataset#get" do
2589
2602
  before do
2590
2603
  @c = Class.new(Sequel::Dataset) do
2591
2604
  attr_reader :last_sql
@@ -2622,7 +2635,7 @@ context "Dataset#get" do
2622
2635
  end
2623
2636
  end
2624
2637
 
2625
- context "Dataset#set_row_proc" do
2638
+ describe "Dataset#set_row_proc" do
2626
2639
  before do
2627
2640
  @c = Class.new(Sequel::Dataset) do
2628
2641
  def fetch_rows(sql, &block)
@@ -2649,7 +2662,7 @@ context "Dataset#set_row_proc" do
2649
2662
  end
2650
2663
  end
2651
2664
 
2652
- context "Dataset#<<" do
2665
+ describe "Dataset#<<" do
2653
2666
  before do
2654
2667
  @d = Sequel::Dataset.new(nil)
2655
2668
  @d.meta_def(:insert) do |*args|
@@ -2662,7 +2675,7 @@ context "Dataset#<<" do
2662
2675
  end
2663
2676
  end
2664
2677
 
2665
- context "Dataset#columns" do
2678
+ describe "Dataset#columns" do
2666
2679
  before do
2667
2680
  @dataset = DummyDataset.new(nil).from(:items)
2668
2681
  @dataset.meta_def(:columns=) {|c| @columns = c}
@@ -2689,7 +2702,7 @@ context "Dataset#columns" do
2689
2702
  end
2690
2703
  end
2691
2704
 
2692
- context "Dataset#columns!" do
2705
+ describe "Dataset#columns!" do
2693
2706
  before do
2694
2707
  @dataset = DummyDataset.new(nil).from(:items)
2695
2708
  i = 'a'
@@ -2704,7 +2717,7 @@ context "Dataset#columns!" do
2704
2717
  end
2705
2718
  end
2706
2719
 
2707
- context "Dataset#import" do
2720
+ describe "Dataset#import" do
2708
2721
  before do
2709
2722
  @dbc = Class.new(Sequel::Database) do
2710
2723
  attr_reader :sqls
@@ -2784,7 +2797,7 @@ context "Dataset#import" do
2784
2797
  end
2785
2798
  end
2786
2799
 
2787
- context "Dataset#multi_insert" do
2800
+ describe "Dataset#multi_insert" do
2788
2801
  before do
2789
2802
  @dbc = Class.new do
2790
2803
  attr_reader :sqls
@@ -2897,7 +2910,7 @@ context "Dataset#multi_insert" do
2897
2910
  end
2898
2911
  end
2899
2912
 
2900
- context "Dataset" do
2913
+ describe "Dataset" do
2901
2914
  before do
2902
2915
  @d = Sequel::Dataset.new(nil).from(:x)
2903
2916
  end
@@ -2944,7 +2957,7 @@ context "Dataset" do
2944
2957
  end
2945
2958
  end
2946
2959
 
2947
- context "Dataset#to_csv" do
2960
+ describe "Dataset#to_csv" do
2948
2961
  before do
2949
2962
  @c = Class.new(Sequel::Dataset) do
2950
2963
  attr_accessor :data
@@ -2976,7 +2989,7 @@ context "Dataset#to_csv" do
2976
2989
  end
2977
2990
  end
2978
2991
 
2979
- context "Dataset#update_sql" do
2992
+ describe "Dataset#update_sql" do
2980
2993
  before do
2981
2994
  @ds = Sequel::Dataset.new(nil).from(:items)
2982
2995
  end
@@ -2998,7 +3011,7 @@ context "Dataset#update_sql" do
2998
3011
  end
2999
3012
  end
3000
3013
 
3001
- context "Dataset#insert_sql" do
3014
+ describe "Dataset#insert_sql" do
3002
3015
  before do
3003
3016
  @ds = Sequel::Dataset.new(nil).from(:items)
3004
3017
  end
@@ -3092,7 +3105,7 @@ class DummyMummyDatabase < Sequel::Database
3092
3105
  end
3093
3106
  end
3094
3107
 
3095
- context "Dataset#inspect" do
3108
+ describe "Dataset#inspect" do
3096
3109
  before do
3097
3110
  @ds = Sequel::Dataset.new(nil).from(:blah)
3098
3111
  end
@@ -3102,7 +3115,7 @@ context "Dataset#inspect" do
3102
3115
  end
3103
3116
  end
3104
3117
 
3105
- context "Dataset#all" do
3118
+ describe "Dataset#all" do
3106
3119
  before do
3107
3120
  @c = Class.new(Sequel::Dataset) do
3108
3121
  def fetch_rows(sql, &block)
@@ -3133,7 +3146,7 @@ context "Dataset#all" do
3133
3146
  end
3134
3147
  end
3135
3148
 
3136
- context "Dataset#grep" do
3149
+ describe "Dataset#grep" do
3137
3150
  before do
3138
3151
  @ds = Sequel::Dataset.new(nil).from(:posts)
3139
3152
  end
@@ -3207,7 +3220,7 @@ context "Dataset#grep" do
3207
3220
  end
3208
3221
  end
3209
3222
 
3210
- context "Dataset default #fetch_rows, #insert, #update, #delete, #truncate, #execute" do
3223
+ describe "Dataset default #fetch_rows, #insert, #update, #delete, #truncate, #execute" do
3211
3224
  before do
3212
3225
  @db = Sequel::Database.new
3213
3226
  @ds = @db[:items]
@@ -3255,7 +3268,7 @@ context "Dataset default #fetch_rows, #insert, #update, #delete, #truncate, #exe
3255
3268
  end
3256
3269
  end
3257
3270
 
3258
- context "Dataset prepared statements and bound variables " do
3271
+ describe "Dataset prepared statements and bound variables " do
3259
3272
  before do
3260
3273
  @db = Sequel::Database.new
3261
3274
  @db.meta_def(:sqls){@sqls||=[]}
@@ -3342,7 +3355,7 @@ context "Dataset prepared statements and bound variables " do
3342
3355
  end
3343
3356
  end
3344
3357
 
3345
- context Sequel::Dataset::UnnumberedArgumentMapper do
3358
+ describe Sequel::Dataset::UnnumberedArgumentMapper do
3346
3359
  before do
3347
3360
  @db = Sequel::Database.new
3348
3361
  @db.meta_def(:sqls){@sqls||=[]}
@@ -3388,7 +3401,7 @@ context Sequel::Dataset::UnnumberedArgumentMapper do
3388
3401
  end
3389
3402
  end
3390
3403
 
3391
- context "Sequel::Dataset#server" do
3404
+ describe "Sequel::Dataset#server" do
3392
3405
  specify "should set the server to use for the dataset" do
3393
3406
  @db = Sequel::Database.new
3394
3407
  @ds = @db[:items].server(:s)
@@ -3410,7 +3423,7 @@ context "Sequel::Dataset#server" do
3410
3423
  end
3411
3424
  end
3412
3425
 
3413
- context "Sequel::Dataset#each_server" do
3426
+ describe "Sequel::Dataset#each_server" do
3414
3427
  before do
3415
3428
  @db = Sequel::Database.new(:servers=>{:s=>{}, :i=>{}})
3416
3429
  @ds = @db[:items]
@@ -3434,7 +3447,7 @@ context "Sequel::Dataset#each_server" do
3434
3447
  end
3435
3448
  end
3436
3449
 
3437
- context "Sequel::Dataset #set_defaults" do
3450
+ describe "Sequel::Dataset #set_defaults" do
3438
3451
  before do
3439
3452
  @ds = Sequel::Dataset.new(nil).from(:items).set_defaults(:x=>1)
3440
3453
  end
@@ -3456,7 +3469,7 @@ context "Sequel::Dataset #set_defaults" do
3456
3469
  end
3457
3470
  end
3458
3471
 
3459
- context "Sequel::Dataset #set_overrides" do
3472
+ describe "Sequel::Dataset #set_overrides" do
3460
3473
  before do
3461
3474
  @ds = Sequel::Dataset.new(nil).from(:items).set_overrides(:x=>1)
3462
3475
  end
@@ -3478,7 +3491,7 @@ context "Sequel::Dataset #set_overrides" do
3478
3491
  end
3479
3492
  end
3480
3493
 
3481
- context "Sequel::Dataset#qualify" do
3494
+ describe "Sequel::Dataset#qualify" do
3482
3495
  specify "should qualify to the given table" do
3483
3496
  MockDatabase.new[:t].filter{a<b}.qualify(:e).sql.should == 'SELECT e.* FROM t WHERE (e.a < e.b)'
3484
3497
  end
@@ -3488,13 +3501,13 @@ context "Sequel::Dataset#qualify" do
3488
3501
  end
3489
3502
  end
3490
3503
 
3491
- context "Sequel::Dataset#qualify_to" do
3504
+ describe "Sequel::Dataset#qualify_to" do
3492
3505
  specify "should qualify to the given table" do
3493
3506
  MockDatabase.new[:t].filter{a<b}.qualify_to(:e).sql.should == 'SELECT e.* FROM t WHERE (e.a < e.b)'
3494
3507
  end
3495
3508
  end
3496
3509
 
3497
- context "Sequel::Dataset#qualify_to_first_source" do
3510
+ describe "Sequel::Dataset#qualify_to_first_source" do
3498
3511
  before do
3499
3512
  @ds = MockDatabase.new[:t]
3500
3513
  end
@@ -3586,7 +3599,7 @@ context "Sequel::Dataset#qualify_to_first_source" do
3586
3599
  end
3587
3600
  end
3588
3601
 
3589
- context "Sequel::Dataset #with and #with_recursive" do
3602
+ describe "Sequel::Dataset #with and #with_recursive" do
3590
3603
  before do
3591
3604
  @db = MockDatabase.new
3592
3605
  @ds = @db[:t]
@@ -3812,7 +3825,7 @@ describe "Sequel timezone support" do
3812
3825
  end
3813
3826
  end
3814
3827
 
3815
- context "Sequel::Dataset#select_map" do
3828
+ describe "Sequel::Dataset#select_map" do
3816
3829
  before do
3817
3830
  @ds = MockDatabase.new[:t]
3818
3831
  def @ds.fetch_rows(sql)
@@ -3849,7 +3862,7 @@ context "Sequel::Dataset#select_map" do
3849
3862
  end
3850
3863
  end
3851
3864
 
3852
- context "Sequel::Dataset#select_order_map" do
3865
+ describe "Sequel::Dataset#select_order_map" do
3853
3866
  before do
3854
3867
  @ds = MockDatabase.new[:t]
3855
3868
  def @ds.fetch_rows(sql)
@@ -3891,7 +3904,7 @@ context "Sequel::Dataset#select_order_map" do
3891
3904
  end
3892
3905
  end
3893
3906
 
3894
- context "Sequel::Dataset#select_hash" do
3907
+ describe "Sequel::Dataset#select_hash" do
3895
3908
  before do
3896
3909
  @ds = MockDatabase.new[:t]
3897
3910
  def @ds.set_fr_yield(hs)
@@ -3929,7 +3942,7 @@ context "Sequel::Dataset#select_hash" do
3929
3942
  end
3930
3943
  end
3931
3944
 
3932
- context "Modifying joined datasets" do
3945
+ describe "Modifying joined datasets" do
3933
3946
  before do
3934
3947
  @ds = MockDatabase.new.from(:b, :c).join(:d, [:id]).where(:id => 2)
3935
3948
  @ds.meta_def(:supports_modifying_joins?){true}
@@ -3947,7 +3960,7 @@ context "Modifying joined datasets" do
3947
3960
  end
3948
3961
  end
3949
3962
 
3950
- context "Dataset#lock_style and for_update" do
3963
+ describe "Dataset#lock_style and for_update" do
3951
3964
  before do
3952
3965
  @ds = MockDatabase.new[:t]
3953
3966
  end