So I am just starting to use a linter and I like the no-magic-numbers rule in generally. But in unit test files it is giving me 1000 warnings. Here is what they look like:
it('getWeekNumber', function() {
expect(getWeekNumber(1538918924615)).to.deep.equal([40, 2018])
expect(getWeekNumber(1536918924615)).to.deep.equal([37, 2018])
expect(getWeekNumber(1528918924615)).to.deep.equal([24, 2018])
expect(getWeekNumber(1438918924615)).to.deep.equal([32, 2015])
})
There is no real logic here, every programmer can read what is going on in this test case. Changing like this won't provide any value in my opinion:
let someRandomTime1 = 1538918924615
let week40 = 40
let year2018 = 2018
expect(getWeekNumber(someRandomTime1)).to.deep.equal([week40, year2018])
Here is another example:
it('timePadding', function() {
expect(timePadding(1)).to.equal('01')
expect(timePadding(5)).to.equal('05')
expect(timePadding(19)).to.equal('19')
expect(timePadding(111)).to.equal('111')
})
While this one can clearly have been tested more programmatically, it is simple, it is readable and it gets the job done.
Should I disable linter no-magic-numbers in unit test files completely?