Skip to content

London | 26-ITP-Jan | Divine Mankrado | Sprint 3 | Practice TDD#1239

Open
divinmank wants to merge 5 commits intoCodeYourFuture:mainfrom
divinmank:coursework/sprint-3-practice-tdd
Open

London | 26-ITP-Jan | Divine Mankrado | Sprint 3 | Practice TDD#1239
divinmank wants to merge 5 commits intoCodeYourFuture:mainfrom
divinmank:coursework/sprint-3-practice-tdd

Conversation

@divinmank
Copy link

@divinmank divinmank commented Mar 10, 2026

Learners, PR Template

Self checklist

  • I have titled my PR with Region | Cohort | FirstName LastName | Sprint | Assignment Title
  • My changes meet the requirements of the task
  • I have tested my changes
  • My changes follow the style guide

Changelist

Finished the practice TDD segment of sprint 3.

@divinmank divinmank added the Needs Review Trainee to add when requesting review. PRs without this label will not be reviewed. label Mar 10, 2026
@github-actions

This comment has been minimized.

@github-actions github-actions bot removed the Needs Review Trainee to add when requesting review. PRs without this label will not be reviewed. label Mar 10, 2026
@divinmank divinmank added the Needs Review Trainee to add when requesting review. PRs without this label will not be reviewed. label Mar 10, 2026
Copy link
Contributor

@cjyuan cjyuan left a comment

Choose a reason for hiding this comment

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

  • Function implementation is correct.

  • A few tests could use some improvement.

Comment on lines +26 to +38
test("should return 0 if the character does not exist in the string", () => {
const str = "hello";
const char = "z";
const count = countChar(str, char);
expect(count).toEqual(0);
});

test("should return 0 if the character does not exist in the string", () => {
const str = "hello";
const char = "z";
const count = countChar(str, char);
expect(count).toEqual(0);
});
Copy link
Contributor

Choose a reason for hiding this comment

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

Duplicated.

// Case 4: Numbers ending with 11, 12, 13, or any other digit
// When the number ends with 11, 12, 13, or any digit not 1, 2, or 3,
// Then the function should return a string by appending "th" to the number.
test("should append 'th' for numbers ending with 11, 12, 13, or other digits", () => {
Copy link
Contributor

Choose a reason for hiding this comment

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

When a test fails with the message "... or other digits", it may be unclear what "other digits" actually refers to.
Can you revise the test description to make it more informative?

Copy link
Contributor

Choose a reason for hiding this comment

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

Could consider testing a few more samples in this script - higher chance to detect bugs in code.

The original specification did not clearly state whether the character match should be case-sensitive.
Most people would probably assume that it is, but to demonstrate our understanding or clarify the assumption we made,
we could add test cases to convey this. For examples,

  • A case to show that the match is case sensitive
  • A case to show that the function is expected to work also for non-alphabets

@cjyuan cjyuan added Reviewed Volunteer to add when completing a review with trainee action still to take. and removed Needs Review Trainee to add when requesting review. PRs without this label will not be reviewed. labels Mar 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Reviewed Volunteer to add when completing a review with trainee action still to take.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants