Qunit dans Docker

Bonjour,
J’ai suivi le Guide pour débutants sur l’installation de Discourse pour le développement avec Docker, j’ai écrit mon plugin et je souhaite maintenant écrire des tests pour celui-ci. Cependant, le site QUnit n’est pas accessible à l’adresse http://localhost:3000/qunit (ERR_EMPTY_RESPONSE), tandis que l’installation de Discourse sur le port 9292 fonctionne correctement. Dois-je passer un paramètre supplémentaire à Unicorn pour qu’il exécute également QUnit ? J’ai lancé boot_dev avec l’option -p, donc ce ne peut pas être cela.

Si Discourse est sur le port 9292, alors qunit s’y trouvera également. http://localhost:9292/qunit

3000 est le port par défaut, alors peut-être avez-vous modifié une configuration ?

Bonjour,

Merci beaucoup, cela fonctionne. Le port 9292 est le port par défaut pour l’environnement de développement Docker, je ne l’ai pas modifié. Il pourrait être pertinent de mettre à jour le post à l’adresse Developing Discourse Plugins - Part 6 - Add acceptance tests pour mentionner que le port est différent pour la méthode Docker.

Cordialement,
Alexander

Désolé, cela ne fonctionne toujours pas. Je ne reçois plus l’erreur précédente et le titre de la page s’affiche bien comme « QUnit Test Runner », mais la page est vide et la console indique : Uncaught Error: Sprockets::FileNotFound: couldn't find file 'qunit/qunit/qunit' with type 'application/javascript'.
Cordialement,
Alexander

Je n’ai pas de cas reproductible ici. Avez-vous commencé à partir de zéro ? Essayez :

cd discourse
sudo rm -fr data
d/shutdown_dev
d/boot_dev --init

Ensuite, visitez localhost:9292/qunit

Cela fonctionne parfaitement ici.

Bonjour @sam,
merci pour votre réponse. J’ai supprimé le répertoire de données, effectué un pull de la dernière version de master et redémarré le conteneur, mais le problème persiste toujours. Je suis sous macOS Catalina. Si vous avez besoin d’autres informations, n’hésitez pas à me le faire savoir.
Cordialement,
Alexander

J’ai également reçu cette même erreur :

sur une installation fraîche de Pop!_OS 20.04 (sans Docker). Je l’ai résolue en exécutant

bundle exec bin/rake qunit:test

et j’ai remarqué qu’il avait installé plusieurs paquets npm avant de commencer l’exécution des tests. Une fois cela terminé, j’ai redémarré le serveur Rails et j’ai pu accéder à QUnit dans le navigateur via localhost:3000/qunit.