Skip to content

test : added unit tests for goals/share.ts#2837

Open
tmdeveloper007 wants to merge 3 commits into
Priyanshu-byte-coder:mainfrom
tmdeveloper007:#2831
Open

test : added unit tests for goals/share.ts#2837
tmdeveloper007 wants to merge 3 commits into
Priyanshu-byte-coder:mainfrom
tmdeveloper007:#2831

Conversation

@tmdeveloper007

Copy link
Copy Markdown
Contributor

Closes #2831.

Summary of What Has Been Done: Added vitest unit tests for the goal-sharing utilities in src/lib/goals/share.ts, covering getGoalProgressPercent, buildPublicGoalSharePath, and buildPublicGoalShareUrl.

Changes Made:

  • Test getGoalProgressPercent: zero/negative/Infinity/NaN inputs return 0, correct percentage for simple values, rounding behavior, caps at 100, floors at 0
  • Test buildPublicGoalSharePath: normal inputs, URL encoding for special chars in username and goalId
  • Test buildPublicGoalShareUrl: correct concatenation, URL encoding for special chars

Impact it Made: These helpers are used in the goal-sharing feature. Test coverage prevents regressions in progress calculation and URL building for usernames with special characters.

@github-actions github-actions Bot added gssoc26 GSSoC 2026 contribution type:testing GSSoC type bonus: tests (+10 pts) labels Jun 26, 2026
@github-actions

Copy link
Copy Markdown

GSSoC Label Checklist 🏷️

@Priyanshu-byte-coder — please apply the appropriate labels before merging:

Difficulty (pick one):

  • level:beginner — 20 pts
  • level:intermediate — 35 pts
  • level:advanced — 55 pts
  • level:critical — 80 pts

Quality (optional):

  • quality:clean — ×1.2 multiplier
  • quality:exceptional — ×1.5 multiplier

Validation (required to score):

  • gssoc:approved — counts for points
  • gssoc:invalid / gssoc:spam / gssoc:ai-slop — does not score

Type labels (type:*) are auto-detected from files and title. Review and adjust if needed.
Points formula: (difficulty × quality_multiplier) + type_bonus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc26 GSSoC 2026 contribution type:testing GSSoC type bonus: tests (+10 pts)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test : add unit tests for goals/share.ts

1 participant