Rails AR/SQLServer Unit Test: [6297] failed (but getting better)

Rich Cox
2007-03-03T14:30:52Z

"bitsweat" has given AR/SQLServer some love, but it''s still
unhappy...

http://dev.rubyonrails.org/changeset/6297
------------------------------------------------------------------------
r6297 | bitsweat | 2007-03-03 07:20:57 -0700 (Sat, 03 Mar 2007) | 1 line

SQLServer: recognize real column type as Ruby float, correctly schema-dump
tables with no indexes or descending indexes. References #7057, #7703. Closes
#7333.
------------------------------------------------------------------------

U    activerecord\test\adapter_test_sqlserver.rb
U    activerecord\test\fixtures\db_definitions\schema.rb
U    activerecord\lib\active_record\connection_adapters\sqlserver_adapter.rb
U    activerecord\CHANGELOG
Updated to revision 6297.

  1) 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:139:in
`log''
    ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:321:in
`execute_without_counting''
    ./test/abstract_unit.rb:73: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:1255:in
`select_limited_ids_list''
    ./test/../lib/active_record/associations.rb:1247:in
`add_limited_ids_condition!''
    ./test/../lib/active_record/associations.rb:1235:in
`construct_finder_sql_with_included_associations''
    ./test/../lib/active_record/associations.rb:1223:in
`select_all_rows''
    ./test/../lib/active_record/associations.rb:1079:in
`find_with_associations''
    ./test/../lib/active_record/associations.rb:1077:in `catch''
    ./test/../lib/active_record/associations.rb:1077:in
`find_with_associations''
    ./test/../lib/active_record/base.rb:1019:in `find_every''
    ./test/../lib/active_record/base.rb:418:in `find''
    ./test/associations/eager_test.rb:300:in
`test_limited_eager_with_multiple_order_columns''

  2) 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:139:in
`log''
    ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:321:in
`execute_without_counting''
    ./test/abstract_unit.rb:73: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:1255:in
`select_limited_ids_list''
    ./test/../lib/active_record/associations.rb:1247:in
`add_limited_ids_condition!''
    ./test/../lib/active_record/associations.rb:1235:in
`construct_finder_sql_with_included_associations''
    ./test/../lib/active_record/associations.rb:1223:in
`select_all_rows''
    ./test/../lib/active_record/associations.rb:1079:in
`find_with_associations''
    ./test/../lib/active_record/associations.rb:1077:in `catch''
    ./test/../lib/active_record/associations.rb:1077:in
`find_with_associations''
    ./test/../lib/active_record/base.rb:1019:in `find_every''
    ./test/../lib/active_record/base.rb:418:in `find''
    ./test/associations/eager_test.rb:295:in
`test_limited_eager_with_order''

  3) Error:
test_additional_columns_from_join_table(HasAndBelongsToManyAssociationsTest):
NoMethodError: undefined method `strftime'' for "2004/10/10
00:00:00":String
    ./test/abstract_unit.rb:30:in `assert_date_from_db''
    ./test/associations_test.rb:1656:in
`test_additional_columns_from_join_table''

  4) Error:
test_habtm_adding_before_save_with_join_attributes(HasAndBelongsToManyAssociationsTest):
NoMethodError: undefined method `strftime'' for "2007/03/03
00:00:00":String
    ./test/abstract_unit.rb:30:in `assert_date_from_db''
    ./test/associations_test.rb:1518:in
`test_habtm_adding_before_save_with_join_attributes''
    ./test/../lib/active_record/associations/association_proxy.rb:127:in
`each''
    ./test/../lib/active_record/associations/association_proxy.rb:127:in
`send''
    ./test/../lib/active_record/associations/association_proxy.rb:127:in
`method_missing''
    ./test/../lib/active_record/associations/association_collection.rb:162:in
`method_missing''
    ./test/associations_test.rb:1518:in
`test_habtm_adding_before_save_with_join_attributes''

  5) Error:
test_select_limited_ids_list(HasAndBelongsToManyAssociationsTest):
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 DISTINCT projects.id FROM projects  LEFT OUTER
JOIN developers_projects ON developers_projects.project_id = projects.id  LEFT
OUTER JOIN developers ON developers.id = developers_projects.developer_id ORDER
BY developers.created_at
    ./test/../lib/active_record/connection_adapters/abstract_adapter.rb:139:in
`log''
    ./test/../lib/active_record/connection_adapters/sqlserver_adapter.rb:321:in
`execute_without_counting''
    ./test/abstract_unit.rb:73: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:1255:in
`select_limited_ids_list''
    ./test/associations_test.rb:1855:in `send''
    ./test/associations_test.rb:1855:in `test_select_limited_ids_list''

  6) Failure:
test_not_resaved_when_unchanged(HasOneAssociationsTest)
    [./test/abstract_unit.rb:42:in `assert_queries''
     ./test/associations_test.rb:397:in
`test_not_resaved_when_unchanged'']:
2 instead of 1 queries were executed.
<1> expected but was
<2>.

  7) Failure:
test_native_decimal_insert_manual_vs_automatic(MigrationTest)
[./test/migration_test.rb:235]:
<#<BigDecimal:ac6c2e4,''0.1234567890 1234567890
0123456789E20'',32(36)>> expected but was
<#<BigDecimal:ac592ac,''0.1234567890 1234567890
012345678E20'',32(36)>>.

  8) Failure:
test_native_types(MigrationTest) [./test/migration_test.rb:279]:
<#<BigDecimal:abbd8e8,''0.1234567890 1234567890
0123456789E20'',32(36)>> expected but was
<#<BigDecimal:abbd80c,''0.1234567890 1234567890
012345678E20'',32(36)>>.

1048 tests, 4317 assertions, 3 failures, 5 errors
Skipping QueryCacheExpiryTest tests. `gem install mocha` and try again.
./test/../lib/active_record/connection_adapters/abstract/quoting.rb:13: warning:
Object#type is deprecated; use Object#class
./test/../lib/active_record/connection_adapters/abstract/quoting.rb:15: warning:
Object#type is deprecated; use Object#class
rake aborted!
Command failed with status (1): [c:/ruby/bin/ruby -Ilib;test;test/connectio...]

(See full trace by running task with --trace)


--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---