带 Mocha/Chai 的单元测试条件 if/else 语句

Unit testing conditional if/else statements w/ Mocha/Chai

快速提问,我在网上找不到任何关于使用几个 if/else 语句测试简单函数的文档,例如这个 fizzBu​​zz 示例...

module.exports =
function fizzBuzz(num) {
    for (let i; i <= num; i++) {
        if (i % 3 === 0 && i % 5 === 0) {
            return 'FIZZBUZZ';
        } else if (i % 3 === 0) {
            return 'FIZZ';
        } else if (i % 5 === 0) {
            return 'BUZZ';
        } else {
            return 'Your number is' + i;
        }
    }
}

这是我的柴...

const assert = require('chai').assert;
const expect = require('chai').expect;
const fizzBuzz = require('../fizzBuzz.js');

describe.only('fizzBuzz', function () {
    describe('Smoke tests', function () {
        it('should exist', function () {
            expect(fizzBuzz).to.exist;
        })
        it('Should be a function', function() {
            expect(fizzBuzz).to.be.a('function');
        })
    })
})

检查每个 if/else 语句的语法是什么?我想检查以确保在某些条件下,函数 returns 是一个字符串,而其他函数 returns 是一个数字。以及当它 returns 一个字符串时,它是否匹配应该返回的单词。我对 Mocha/Chai 很陌生。

提前谢谢大家,

布列塔尼

例如:

it('Pass param 5 should return \'BUZZ\'', function() {
    expect(fizzBuzz(5)).to.equal('BUZZ');
});