Rich Cox
2007-May-31 17:20 UTC
Rails AR/SQLServer Unit Test: [6912] failed (but getting better)
"bitsweat" has given AR/SQLServer some love, but it''s still unhappy... http://dev.rubyonrails.org/changeset/6912 ------------------------------------------------------------------------ r6912 | bitsweat | 2007-05-31 10:15:56 -0700 (Thu, 31 May 2007) | 1 line Fix an edge case with find with a list of ids, limit, and offset. Closes #8437. ------------------------------------------------------------------------ U activerecord\test\finder_test.rb U activerecord\lib\active_record\base.rb Updated to revision 6912. 1) Error: test_saves_both_date_and_time(DateTimeTest): ArgumentError: argument out of range ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:106:in `mktime'' ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:106:in `cast_to_datetime'' ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:79:in `type_cast'' ./test/../lib/active_record/base.rb:2040:in `read_attribute'' ./test/../lib/active_record/base.rb:2325:in `send'' ./test/../lib/active_record/base.rb:2325:in `clone_attribute_value'' ./test/../lib/active_record/base.rb:2319:in `clone_attributes'' ./test/../lib/active_record/base.rb:2107:in `inject'' ./test/../lib/active_record/base.rb:2318:in `each'' ./test/../lib/active_record/base.rb:2318:in `inject'' ./test/../lib/active_record/base.rb:2318:in `clone_attributes'' ./test/../lib/active_record/base.rb:1822:in `attributes'' ./test/../lib/active_record/base.rb:2196:in `attributes_with_quotes'' ./test/../lib/active_record/base.rb:2295:in `quoted_column_names'' ./test/../lib/active_record/base.rb:1975:in `create_without_callbacks'' ./test/../lib/active_record/callbacks.rb:256:in `create_without_timestamps'' ./test/../lib/active_record/timestamp.rb:29:in `create'' ./test/../lib/active_record/base.rb:1951:in `create_or_update_without_callbacks'' ./test/../lib/active_record/callbacks.rb:243:in `create_or_update'' ./test/../lib/active_record/base.rb:1692:in `save_without_validation!'' ./test/../lib/active_record/validations.rb:858:in `save_without_transactions!'' ./test/../lib/active_record/transactions.rb:109:in `save!'' ./test/../lib/active_record/connection_adapters/abstract/database_statements.rb:59:in `transaction'' ./test/../lib/active_record/transactions.rb:77:in `transaction'' ./test/../lib/active_record/transactions.rb:97:in `transaction'' ./test/../lib/active_record/transactions.rb:109:in `save!'' ./test/../lib/active_record/transactions.rb:117:in `rollback_active_record_state!'' ./test/../lib/active_record/transactions.rb:109:in `save!'' ./test/date_time_test.rb:11:in `test_saves_both_date_and_time'' c:/ruby/lib/ruby/gems/1.8/gems/mocha-0.4.0/lib/mocha/test_case_adapter.rb:19:in `__send__'' c:/ruby/lib/ruby/gems/1.8/gems/mocha-0.4.0/lib/mocha/test_case_adapter.rb:19:in `run'' 2) Error: test_limited_eager_with_multiple_order_columns(EagerAssociationTest): ActiveRecord::StatementInvalid: DBI::DatabaseError: Execute OLE error code:80040E14 in Microsoft OLE DB Provider for SQL Server ORDER BY items must appear in the select list if SELECT DISTINCT is specified. HRESULT error code:0x80020009 Exception occurred.: SELECT * FROM (SELECT TOP 2 * FROM (SELECT DISTINCT TOP 3 posts.id FROM posts LEFT OUTER JOIN authors ON authors.id = posts.author_id LEFT OUTER JOIN comments ON comments.post_id = posts.id WHERE (authors.name = ''David'') ORDER BY UPPER(posts.title), posts.id) AS tmp1 ORDER BY title DESC, id DESC) AS tmp2 ORDER BY title, id ./test/../lib/active_record/connection_adapters/abstract_adapter.rb:135:in `log'' ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:321:in `execute_without_counting'' ./test/abstract_unit.rb:71:in `execute'' ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:517:in `select'' ./test/../lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all'' ./test/../lib/active_record/associations.rb:1319:in `select_limited_ids_list'' ./test/../lib/active_record/associations.rb:1311:in `add_limited_ids_condition!'' ./test/../lib/active_record/associations.rb:1299:in `construct_finder_sql_with_included_associations'' ./test/../lib/active_record/associations.rb:1287:in `select_all_rows'' ./test/../lib/active_record/associations.rb:1142:in `find_with_associations'' ./test/../lib/active_record/associations.rb:1140:in `catch'' ./test/../lib/active_record/associations.rb:1140:in `find_with_associations'' ./test/../lib/active_record/base.rb:989:in `find_every'' ./test/../lib/active_record/base.rb:431:in `find'' ./test/associations/eager_test.rb:300:in `test_limited_eager_with_multiple_order_columns'' c:/ruby/lib/ruby/gems/1.8/gems/mocha-0.4.0/lib/mocha/test_case_adapter.rb:19:in `__send__'' c:/ruby/lib/ruby/gems/1.8/gems/mocha-0.4.0/lib/mocha/test_case_adapter.rb:19:in `run'' 3) Error: test_limited_eager_with_order(EagerAssociationTest): ActiveRecord::StatementInvalid: DBI::DatabaseError: Execute OLE error code:80040E14 in Microsoft OLE DB Provider for SQL Server ORDER BY items must appear in the select list if SELECT DISTINCT is specified. HRESULT error code:0x80020009 Exception occurred.: SELECT * FROM (SELECT TOP 2 * FROM (SELECT DISTINCT TOP 3 posts.id FROM posts LEFT OUTER JOIN authors ON authors.id = posts.author_id LEFT OUTER JOIN comments ON comments.post_id = posts.id WHERE (authors.name = ''David'') ORDER BY UPPER(posts.title)) AS tmp1 ORDER BY title DESC) AS tmp2 ORDER BY title ./test/../lib/active_record/connection_adapters/abstract_adapter.rb:135:in `log'' ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:321:in `execute_without_counting'' ./test/abstract_unit.rb:71:in `execute'' ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:517:in `select'' ./test/../lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `select_all'' ./test/../lib/active_record/associations.rb:1319:in `select_limited_ids_list'' ./test/../lib/active_record/associations.rb:1311:in `add_limited_ids_condition!'' ./test/../lib/active_record/associations.rb:1299:in `construct_finder_sql_with_included_associations'' ./test/../lib/active_record/associations.rb:1287:in `select_all_rows'' ./test/../lib/active_record/associations.rb:1142:in `find_with_associations'' ./test/../lib/active_record/associations.rb:1140:in `catch'' ./test/../lib/active_record/associations.rb:1140:in `find_with_associations'' ./test/../lib/active_record/base.rb:989:in `find_every'' ./test/../lib/active_record/base.rb:431:in `find'' ./test/associations/eager_test.rb:295:in `test_limited_eager_with_order'' c:/ruby/lib/ruby/gems/1.8/gems/mocha-0.4.0/lib/mocha/test_case_adapter.rb:19:in `__send__'' c:/ruby/lib/ruby/gems/1.8/gems/mocha-0.4.0/lib/mocha/test_case_adapter.rb:19:in `run'' 4) Error: test_attributes(FixturesTest): ActiveRecord::StatementInvalid: DBI::DatabaseError: Not enough SQL parameters: INSERT INTO binaries ([id], [data]) VALUES (1, ''ÿØÿà%02 JFIF%02 %02H%02H%02%02ÿÛ%02C%02 %01 %00 %03 %03 $.'''' ",# (7),01444 ''''9=82<.342ÿÛ%02C %00%00 2! !22222222222222222222222222222222222222222222222222ÿÀ%02 ^ "%02 ÿÄ%02 %02%02 %02%02%02%02%02%02%02%02%02%02 ÿÄ%02E %02 %02 %02 !1A Qa"q 2''¡±Á #BÑ$Rbá3rðñ C%4Scs,''¢D²ÒÿÄ%02%03 %02 %02%02%02%02%02%02%02%02%02%02%02 ÿÄ%02+ %02 %02%02%02%02%02 ! 1 A Q"2 a¡ #B q''±ÿÚ%02 %02 %02?%02÷ú(¢EURO%01(¢EURO%01(¢EURO%01(¢EURO%01(ª·ú...|(tm)h÷W· Á%01õw8ú Sí@ ª9§Þ -gT ff8%02%01A§ø²ÓZåôýÁ`--Ës Áè 8ô9ïéR |ýÄ¿(tm)Øó ámïþ$hÖÒ g¹ ÿ%02Q øOÐTpøÍõ -lѨÇôãç...}1/4ðöq ´ö0|rZDø Ï""iú]Òý''6 Çþ$ aØ{%01"í{ S Í(c)ßMÏÚe%02õ ýª3/4 fe>lÜ÷$ñøÔ<<· 1ø(r)F IùÔ "1/4É(·"È`fÚ|1/2Ã#v8ÍA§\ [U¶k--7 eÛ''ÎrqÏ1/2]i "Æ>¢³ ±:(c)(tm)|gÃ;y \ñë[ zF 3/4 -¿táZ Ù NvîÎ8=hÔ|yy£4&âÍn"rAa"9ô¬Å¥¬ú <<6"+eCï·vïãçV<BðÜiAw --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To post to this group, send email to rubyonrails-core@googlegroups.com To unsubscribe from this group, send email to rubyonrails-core-unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-core?hl=en -~----------~----~----~----~------~----~------~--~---