Skip to content
Open
Changes from all commits
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
16 changes: 12 additions & 4 deletions src/splitInteger.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,26 @@ const splitInteger = require('./splitInteger');

test(`should split a number into equal parts
if a value is divisible by a numberOfParts`, () => {

expect(splitInteger(8, 1)).toEqual([8]);
expect(splitInteger(6, 2)).toEqual([3, 3]);
expect(splitInteger(20, 4)).toEqual([5, 5, 5, 5]);
});

test(`should return a part equals to a value
when splitting into 1 part`, () => {

expect(splitInteger(20, 1)).toEqual([20]);
expect(splitInteger(17, 4)).toEqual([4, 4, 4, 5]);
expect(splitInteger(32, 6)).toEqual([5, 5, 5, 5, 6, 6]);
});
Comment on lines 12 to 17

Choose a reason for hiding this comment

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

This test description is a bit confusing because it only describes the first assertion. The assertions on lines 15 and 16 test cases where the value is split into multiple, unequal parts. Consider moving them to the 'should sort parts ascending if they are not equal' test block to keep related tests together.


test('should sort parts ascending if they are not equal', () => {
test(`should sort parts ascending if they are not equal`, () => {
const result = splitInteger(21, 4);

expect(result).toEqual([5, 5, 5, 6]);
});

test('should add zeros if value < numberOfParts', () => {
test(`should add zeros if value < numberOfParts`, () => {
const result = splitInteger(3, 4);

expect(result).toEqual([0, 1, 1, 1]);
});

Choose a reason for hiding this comment

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

Great work on the existing tests! To fully meet the requirements, please add tests for all the specific examples provided in the task description, such as splitInteger(17, 4) and splitInteger(32, 6). These examples are required to ensure the function is fully verified against the specification.