Module 2 – C# — build and test
Build, break, and test a study planner
15-minute session: read for 3 minutes, trace for 3, experiment for 7, and complete the check for 2. Spend longer whenever you need.
A useful test compares a result with a requirement. The planner must never report negative remaining work for its stated nonnegative input domain. Run the starter, then deliberately remove the protection for completed counts above total. At least one check should fail. Restore it. Add two named study tasks, a summary, and boundary cases. Save the source and evidence on Agila Forge. Explain every line, including anything suggested by AI.
Main is the entry method inside Program. Console.WriteLine prints a line. A class instance can have several references to the same object; assigning a reference does not clone the object.
using System;
using System.Collections.Generic;
class Program {
static int Remaining(int total, int done) { return done >= total ? 0 : total - done; }
static void Main() {
if (Remaining(4,1)!=3 || Remaining(4,4)!=0 || Remaining(4,5)!=0 || Remaining(0,0)!=0)
throw new Exception("Test failed");
Console.WriteLine("Passed");
}
}
Expected result: Passed
Practice and evidence
Keep three notes: your prediction, the actual result, and why they match or differ. The completion check grades understanding; the practice task builds skill.
Complete this lesson
Answer every check correctly to earn your lesson certificate. Feedback helps you review and try again.
Sign in · Save your progress and earn a certificate for this lesson.