Postgres или database_cleaner? - PullRequest
       5

Postgres или database_cleaner?

2 голосов
/ 08 сентября 2011

У меня очень странный случай. У меня есть этот сценарий, и иногда он проходит. Иногда это не так. Фактически, каждый шаг является зеленым, но затем, после шага, он генерирует эту трассировку стека мусора, которая ничего не говорит мне о моем приложении.

И я не делаю здесь ничего сложного, просто пытаюсь создать проклятый комментарий с TinyMCE. У меня есть 20 других сценариев, некоторые из которых намного сложнее.

Это могло бы помочь определить все мое окружение, хотя это довольно очевидно из трассировки стека:

Rails 3.1, ruby ​​1.9.2, последняя «стабильная» версия всего. Postgres 9.0.4.

Может ли кто-нибудь умнее меня объяснить, почему я получил эту проблему?

Feature: Payment object comments
  In order to explain a action I performed on a payment object
  As a user
  I want to make a comment

  @wip @javascript
  Scenario: Creating a comment                         # features/payment_objects/comments.feature:8
[paperclip] Saving attachments.
[paperclip] Saving attachments.
[paperclip] Saving attachments.
    Given I am in a company                            # features/step_definitions/application_steps.rb:1
    And I have created 1 cash requisitions             # features/step_definitions/payment_steps.rb:5
    When I am on the requisitions page                 # features/step_definitions/web_steps.rb:44
    And I click on the 1st requisition                 # features/step_definitions/payment_steps.rb:39
    When I open the Comments tab                       # features/step_definitions/payment_steps.rb:101
http://127.0.0.1:51796/assets/tinymce/plugins/spellchecker/editor_plugin.js?3.4.5:1 Error: Sprockets::EncodingError: /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/tinymce-rails-3.4.5/assets/precompiled/tinymce/plugins/spellchecker/editor_plugin.js has a invalid UTF-8 byte sequence
    When I fill in "comment_content" with "Testing123" # features/step_definitions/web_steps.rb:64
    And I click on "Comment"                           # features/step_definitions/web_steps.rb:52
    Then there should be a comment saying "Testing123" # features/step_definitions/payment_steps.rb:106
http://127.0.0.1:51796/assets/tinymce/plugins/spellchecker/editor_plugin.js?3.4.5:1 Error: Sprockets::EncodingError: /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/tinymce-rails-3.4.5/assets/precompiled/tinymce/plugins/spellchecker/editor_plugin.js has a invalid UTF-8 byte sequence
      NoMethodError: undefined method `nfields' for nil:NilClass:           SELECT tablename
                FROM pg_tables
                WHERE schemaname = ANY (current_schemas(false))
       (ActiveRecord::StatementInvalid)
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/whiny_nil.rb:48:in `method_missing'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/postgresql_adapter.rb:490:in `result_as_array'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/postgresql_adapter.rb:533:in `block in query'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/abstract_adapter.rb:244:in `block in log'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.0/lib/active_support/notifications/instrumenter.rb:21:in `instrument'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/abstract_adapter.rb:239:in `log'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/postgresql_adapter.rb:532:in `query'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/postgresql_adapter.rb:666:in `tables'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.1.0/lib/active_record/connection_adapters/postgresql_adapter.rb:455:in `disable_referential_integrity'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/database_cleaner-0.6.7/lib/database_cleaner/active_record/truncation.rb:113:in `each_table'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/database_cleaner-0.6.7/lib/database_cleaner/active_record/truncation.rb:106:in `clean'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/database_cleaner-0.6.7/lib/database_cleaner/base.rb:77:in `clean'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/database_cleaner-0.6.7/lib/database_cleaner/configuration.rb:56:in `block in clean'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/database_cleaner-0.6.7/lib/database_cleaner/configuration.rb:56:in `each'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/database_cleaner-0.6.7/lib/database_cleaner/configuration.rb:56:in `clean'
      /Users/pma/.rvm/gems/ruby-1.9.2-p290/gems/cucumber-rails-1.0.2/lib/cucumber/rails/hooks/database_cleaner.rb:9:in `After'

1 Ответ

1 голос
/ 10 сентября 2011

Я получил аналогичную проблему с конвейером ресурсов и tiny_mce, когда я запустил

rake assets:precompile

... Я попытался преобразовать файлы editor_plugin_src.js и editor_plugin.js с помощью iconv и т. Д., Но в итоге получилсяпросто удалил их на время, и все заработало.Я планирую «исправить это правильно», но если вам не нужна проверка орфографии, вам могут не понадобиться эти файлы ...

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