Ich arbeite an einem benutzerdefinierten Yeoman Generator, und ich versuche, einige Tests für einen Untergenerator hinzuzufügen.Wo sucht der Yeoman-Testhelfer nach Untergeneratoren?
Ich kann nicht herausfinden, wie man yeoman's test helpers verwendet, um dies zu erreichen. I haben in der Lage, zu verwenden, um den Teilgenerator neben meinem Hauptgenerator laufen zu lassen, aber ich kann den Testhelfer nicht bekommen, um es zu erkennen.
Außerdem bekomme ich einige seltsame Diskrepanzen, wenn ich den Generator aus meinen Testdateien starte, vs wenn ich es normal ausführe (von der Kommandozeile).
in app/index.js:
Hinweis: Dieser Code schlägt fehl, wenn normal laufen, und wenn sie von meinen Tests laufen. Wenn ich die Funktion zu this.composeWith('my-generator:sub-generator')
ändere, wird es erfolgreich über die Befehlszeile ausgeführt, schlägt jedoch während des Tests fehl.
initializing: function() {
this.composeWith('sub-generator');
},
in meiner Test-Datei:
before(function (done) {
helpers.run(roundhouse)
.withGenerators([
[helpers.createDummyGenerator(), '../sub-generator']
])
.inDir(testDir)
.withPrompts(prompts.default)
.withOptions({"skipInstall": true})
.on('end', done);
});
Der Fehler, wenn der Generator von der Befehlszeile ausgeführt wird (yo my-generator
):
You don't seem to have a generator with the name sub-generator installed.
You can see available generators with npm search yeoman-generator and then install them with npm install [name].
To see the 24 registered generators run yo with the `--help` option.
Wenn aus meinen Tests laufen:
Uncaught Error: You don't seem to have a generator with the name sub-generator installed.
You can see available generators with npm search yeoman-generator and then install them with npm install [name].
To see the 2 registered generators run yo with the `--help` option.
Warum kann meine Testdatei nicht die anderen Generatoren sehen, die ich installiert habe? Anstelle von 24 Generatoren, es sagt mir, dass ich nur 2.
versuchen, den Pfad zu übergeben, werfen Sie einen Blick auf http://yeoman.io/authoring/composability.html settings.local –
Verwenden von '.withGenerators (['../ sub-generator/index.js'])' gibt den gleichen Fehler, aber zählt 1 registrierten Generator statt 2. Ich habe auch versucht, Variationen über den Pfad mit 'path.join()' und 'path.resolve()', ohne Wirkung. – Deimyts