Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"scripts": {
"init": "mate-scripts init",
"start": "mate-scripts start",
"format": "prettier --ignore-path .prettierignore --write './src/**/*.js'",
"format": "prettier --ignore-path .prettierignore --write ./src/**/*.js",
"lint": "npm run format && mate-scripts lint",
"test:only": "mate-scripts test",
"update": "mate-scripts update",
Expand Down
20 changes: 16 additions & 4 deletions src/splitInteger.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,23 @@
const splitInteger = require('./splitInteger');

test(`should split a number into equal parts
if a value is divisible by a numberOfParts`, () => {});
if a value is divisible by a numberOfParts`, () => {
expect(splitInteger(12, 3)).toEqual([4, 4, 4]);
});

test(`should return a part equals to a value
when splitting into 1 part`, () => {});
when splitting into 1 part`, () => {
expect(splitInteger(7, 1)).toEqual([7]);
});

test('should sort parts ascending if they are not equal', () => {});
test('should sort parts ascending if they are not equal', () => {
const result = splitInteger(10, 3);

test('should add zeros if value < numberOfParts', () => {});
const sorted = [...result].sort((a, b) => a - b);

expect(result).toEqual(sorted);
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test correctly checks that the output is sorted, but it doesn't verify if the numbers in the array are the correct result of the split. For example, if the function returned [1, 2, 7] for splitInteger(10, 3), this test would pass because the array is sorted, but it's not the correct result.

It's better to test against the specific expected output, which also implicitly verifies the sorting. A more robust check would be:

expect(splitInteger(10, 3)).toEqual([3, 3, 4]);

});

test('should add zeros if value < numberOfParts', () => {
expect(splitInteger(3, 5)).toEqual([0, 0, 1, 1, 1]);
});
Loading