Code
Raise test coverage
Add the tests that would actually have caught something.
Fill it in
Which module.
Where to stop.
%
So the tests fit your setup.
Your prompt
Raise coverage on [your path to cover] to 90%, using [your test framework]. Coverage is the budget, not the goal. Write the tests that would have CAUGHT something: the boundary, the empty input, the error path nobody exercises, the branch that only runs on the last day of the month. A suite that walks every line while asserting nothing is worse than a low number, because it reports safety that is not there. Read the code first and list what could plausibly break. Test those. If the percentage lands short, say which remaining code is genuinely not worth testing and why, rather than padding with tests that assert a function was called. Each test names the behaviour it protects, not the function it calls. A name like "rejects a discount that would make the total negative" is a test name; "test applyDiscount 3" is a serial number.
Use Raise test coverageOpens with everything above already filled in.
Why this works
Tests written for a coverage number assert what the code does, which locks the bugs in. This writes for behaviour and reports what it found that was actually wrong.