Type d'attribut non déclaré pour l'énumération 'chat_send_shortcut' dans UserOption

J’essayais d’exécuter rspec sur des plugins, et voici ce que j’ai obtenu :

Il semble que cela ait été introduit ici :

Il pourrait manquer base.attribute :chat_send_shortcut, :integer, default: 0 ?

Je suis tombé sur ce même problème en ajoutant un nouvel enum. Il s’avère que je devais explicitement exécuter les migrations du plugin pour l’environnement de test :
RAILS_ENV=test LOAD_PLUGINS=1 bin/rails db:migrate

2 « J'aime »

Oh, intéressant. Je pensais que db:migrate incluait les plugins par défaut.
En effet, j’avais pas mal de migrations en attente pour les plugins sur RAILS_ENV=test.
L’erreur a disparu maintenant, merci !

EDIT :
En fait, si vous utilisez RAILS_ENV=test bin/rake db:migrate, remarquez le « bin/ », il définit LOAD_PLUGINS à 1.

image

Vous pouvez voir le contenu de bin/rake :

if ENV['RAILS_ENV'] == 'test' && ENV['LOAD_PLUGINS'].nil?
  if ARGV.include?('db:migrate') || ARGV.include?('parallel:migrate')
    STDERR.puts "You are attempting to run migrations in your test environment and are not loading plugins, setting LOAD_PLUGINS to 1"
    ENV['LOAD_PLUGINS'] = '1'
  end
end

À un moment donné, j’ai probablement arrêté de taper bin/ par paresse :grinning_face_with_smiling_eyes:.

3 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.