MySQL не работает с тестом рейка: (юниты | функционалы | и т. д.) - PullRequest
0 голосов
/ 22 февраля 2012

Это ошибка, которую я получаю:

Task not supported by 'mysql2'
/Users/me/.rvm/gems/ruby-1.8.7-p352@project/gems/rails-2.3.8/lib/tasks/databases.rake:380

Вот код вокруг области, где произошла ошибка:

desc "Empty the test database"
task :purge => :environment do
  abcs = ActiveRecord::Base.configurations
  case abcs["test"]["adapter"]
  when "mysql"
    ActiveRecord::Base.establish_connection(:test)
    ActiveRecord::Base.connection.recreate_database(abcs["test"]["database"], abcs["test"])
  when "postgresql"
    ActiveRecord::Base.clear_active_connections!
    drop_database(abcs['test'])
    create_database(abcs['test'])
  when "sqlite","sqlite3"
    dbfile = abcs["test"]["database"] || abcs["test"]["dbfile"]
    File.delete(dbfile) if File.exist?(dbfile)
  when "sqlserver"
    dropfkscript = "#{abcs["test"]["host"]}.#{abcs["test"]["database"]}.DP1".gsub(/\\/,'-')
    `osql -E -S #{abcs["test"]["host"]} -d #{abcs["test"]["database"]} -i db\\#{dropfkscript}`
    `osql -E -S #{abcs["test"]["host"]} -d #{abcs["test"]["database"]} -i db\\#{RAILS_ENV}_structure.sql`
  when "oci", "oracle"
    ActiveRecord::Base.establish_connection(:test)
    ActiveRecord::Base.connection.structure_drop.split(";\n\n").each do |ddl|
      ActiveRecord::Base.connection.execute(ddl)
    end
  when "firebird"
    ActiveRecord::Base.establish_connection(:test)
    ActiveRecord::Base.connection.recreate_database!
  else
    raise "Task not supported by '#{abcs["test"]["adapter"]}'"
  end
end

строка 380, является raiseстрока в конце.

Все начало работать, когда я добавил это в mysql case:

  when "mysql", "mysql2"

Есть ли более новая версия rails, в которой это исправлено?(<3,0?)Я не хочу говорить всем, чтобы добавить <code>,"mysql2", когда хотите запустить тесты.= \

Или это ошибка в рельсах 2.3.x?

Я использую рельсы 2.3.8 и ruby ​​1.8.7

1 Ответ

0 голосов
/ 24 февраля 2012

Обновление до 2.3.10 может решить эту проблему: https://github.com/brianmario/mysql2/issues/83

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...