Изучение Mocha + Chai для JS прямо сейчас, и я немного озадачен тем, как проверить этот бит кода:
for (var j = 12; j <= 19; j++) {
if (cardNumber.length === j) {
if (cardNumber.slice(0, 4) === '5018') {
return 'Maestro';
} else if (cardNumber.slice(0, 4) === '5020') {
return 'Maestro';
} else if (cardNumber.slice(0, 4) === '5038') {
return 'Maestro';
} else if (cardNumber.slice(0, 4) === '6304') {
return 'Maestro';
}
}
}
Я тестирую, чтобы увидеть, является ли входная строка, которая является ли номер карты удовлетворяющим любому из условий ниже с указанием первых 4 элементов, и длина карты должна быть между 12 и 19.
describe('Maestro', function() {
// Write full test coverage for the Maestro card
var should = chai.should();
for (var length = 12; length <= 19; length++) {
(function(length) {
it ('has a prefix of 5018 and a length of ' + length, function() {
detectNetwork('5018' + ???).should.equal('Maestro');
});
})(length)
};
});
Я не хочу писать все контрольные примеры для каждого из 4 префиксов + каждая длина от 12 до 19. Можно ли как-нибудь добавить строку префикса, увеличив ее на количество элементов, равное длине?
У меня есть попытался поместить для l oop с массивом дополнительных целых чисел от 12-19 и добавить его к префиксу в тестовой функции, но он все еще не работает