Qunit in Docker

Ciao,
ho seguito la Guida per principianti per installare Discourse per lo sviluppo utilizzando Docker, ho scritto il mio plugin e ora vorrei scrivere dei test per esso. Tuttavia, il sito QUnit non è accessibile all’indirizzo http://localhost:3000/qunit (ERR_EMPTY_RESPONSE), mentre l’installazione di Discourse sulla porta 9292 funziona correttamente. Devo passare qualche parametro aggiuntivo a Unicorn per far sì che esegua anche QUnit? Ho eseguito boot_dev con l’opzione -p, quindi non può essere quello il problema.

Se Discourse è sulla porta 9292, allora qunit sarà lì anche. http://localhost:9292/qunit

3000 è la porta predefinita, quindi forse hai modificato qualche configurazione?

Ciao,
grazie mille, funziona. La porta 9292 è quella predefinita per l’ambiente di sviluppo Docker, non l’ho modificata. Forse ha senso aggiornare il post all’indirizzo Developing Discourse Plugins - Part 6 - Add acceptance tests per menzionare che la porta è diversa per l’approccio Docker.
Cordiali saluti
Alexander

Scusa, non funziona ancora. Non ricevo più l’errore precedente e il titolo della pagina viene visualizzato come QUnit Test Runner, ma la pagina è vuota e la console riporta: Uncaught Error: Sprockets::FileNotFound: couldn't find file 'qunit/qunit/qunit' with type 'application/javascript'.

Cordiali saluti,
Alexander

Non riesco a riprodurre il problema qui. Hai iniziato da zero? Prova:

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

Poi visita localhost:9292/qunit

Da me funziona correttamente.

Ciao @sam,
grazie per la tua risposta. Ho rimosso la directory dei dati, aggiornato all’ultima versione di master e riavviato il contenitore, ma il problema persiste. Sto utilizzando macOS Catalina. Se hai bisogno di ulteriori informazioni, fammi sapere.
Un saluto,
Alexander

Anche io ho ricevuto lo stesso errore:

su una nuova installazione di Pop!_OS 20.04 (non Docker). L’ho risolto eseguendo

bundle exec bin/rake qunit:test

e ho notato che ha installato un sacco di pacchetti npm prima di iniziare a eseguire i test. Una volta completata l’operazione, ho riavviato il server Rails e ho potuto accedere a QUnit nel browser all’indirizzo localhost:3000/qunit.