Ich möchte einige Hilfe, um festzustellen, warum mein Unit-Test in einer sails.js App nicht wie erwartet funktioniert.Bluebird Promise jeder in Mokka/Chai-Test funktioniert nicht
Ich verwende Mokka, Chai und Bluebird Versprechen Bibliothek auf einer sails.js App.
Was will ich erreichen:
- einen Test erstellen für TagsService.create (Name) -Methode, die einen Namen Parameter akzeptiert.
- -Test, dass diese Methode einen neuen Tag Datensatz nicht auf ungültige Namen erstellen will ich
- Der Name Parameter ist erforderlich und sollte weniger als 121 Zeichen
Was zur Zeit lang passieren ich habe:
// Test the 'create' method
describe('Method \'create\' test result: \n', function() {
// Test that name is required and less than 121 chars long
it('Must receive the name parameter and be less than 121 chars long', function(done) {
\t \t
// It should not accept any of the following names
var names = ['',' ','thisstringislongerthanthemaxof121characterslongthisstringislongerthanthemaxof121characterslongthisstringislongerthanthema',[],[{}],[{test: 'test'}],'wrongchars*[]$£%fsf','$%@~}[','£$%jkdfi',' $%"£asdwdFDE','hD8U £$&{DS ds'];
sails.bluebird.each(names,function(name){
TagsService.create(name).then(function(data){
assert.propertyVal(data,'status','err','An error was NOT returned - even though names provided should be invalid');
});
}).then(function(){
done();
});
\t \t
});
});
Was passiert ist, es scheint zu bestehen, selbst wenn ich einen gültigen Namen übergebe oder null von der Methode zurückgebe.
Siehe auch https://github.com/domenic/chai-as-promised –