Repository navigation
Description
Student: Anjali Dewangan
Task: R51-T045 · 5 of 10
Repository: https://github.com/S-AI-Projects/javascript-algorithms
Assigned working branch: student/e26b07f0661
Goal
Work on src/algorithms/math/radian/degreeToRadian.js. Control the external state used while testing degreeToRadian. For a pure function, verify repeated calls and input isolation; for time, randomness, network or UI code, inject or mock the relevant dependency. Fixture: Use the smallest valid input and one ordinary input for degreeToRadian from src/algorithms/math/radian/degreeToRadian.js. Write the literal inputs and independently calculated expected outputs in the tests before editing the implementation. The check must name the source line establishing each precondition.
Steps
- Read src/algorithms/math/radian/degreeToRadian.js, especially
degreeToRadiannear line 5. Record its public inputs, result, mutation behavior and any external dependencies before changing it. - Identify every observable dependency used by this item; explicitly state when none exists.
- Run the same fixture twice in fresh isolated state and once after another valid input; assert that earlier runs cannot alter the later result.
- Implement work/R51-T045/check.py as a focused runner that executes the new checks and propagates failures. Native check to incorporate: run the repository test script in non-watch mode after installing from its lockfile; for browser-only code use a browser test instead of plain Node. Record the actual command and nonzero test count.
- Create the checks specified below and run
python3 work/R51-T045/check.py. Save inputs, expected versus actual results and tool versions in work/R51-T045/; a check must exit non-zero when an assertion fails. - Commit the repository change on branch R51-T045; prepare a PR to the organisation fork explaining the result and linking the checks. Keep each task independently reviewable. Remove work/R51-T045/ from a later upstream branch.
Done when
☐ The checked behavior is tied to degreeToRadian in src/algorithms/math/radian/degreeToRadian.js; every assertion has an explicit expected value.
☐ Use the smallest valid input and one ordinary input for degreeToRadian from src/algorithms/math/radian/degreeToRadian.js. Write the literal inputs and independently calculated expected outputs in the tests before editing the implementation. The check must name the source line establishing each precondition.
☐ Existing supported behavior and the public interface are preserved unless a failing regression demonstrates and documents a defect.
☐ The focused test works without live network access, a real user account or GUI interaction.
☐ Any introduced dependency parameter has a default preserving current callers.
Additional task guidance
Additional curated task guidance
Item:
src/algorithms/math/radian
Task type:
Deterministic execution
Code change (goes into the PR):
src/algorithms/math/radian/degreeToRadian.js: make the smallest dependency seam needed for deterministic checks, or add repeatability/input-isolation regression tests if it is already pure.
Automated check:
python3 work/R51-T045/check.py
Prerequisites:
Node matching project CI, the project lockfile dependencies, and Python 3.
Upstream PR rules:
Keep the contribution scoped to the named item and follow the linked contribution instructions and repository CI. Submit coursework to the organisation fork first; keep work/ evidence out of any later upstream PR. Upstream acceptance is not a grading requirement. Policy: https://github.com/trekhleb/javascript-algorithms/blob/85293e3e2b88f4d2ce330d956b139cf628aa1e82/CONTRIBUTING.md
Source (pinned):
https://github.com/trekhleb/javascript-algorithms/blob/85293e3e2b88f4d2ce330d956b139cf628aa1e82/src/algorithms/math/radian/degreeToRadian.js#L5
Change:
Replaces the shared task template with an item-specific contribution brief.
PR destination:
Upstream candidate after review
Submission checklist
- Complete this task and its checks.
- Add the required evidence and link your pull request here.
- Select this S-AI-Projects fork as the PR base repository.
- Request instructor review.
Keep this PR focused on this task. Do not submit assignment PRs to the upstream repository.
Activity