@@ -0,0 +1,2466 @@
+package com.blocksolid.income;%0A%0Aimport org.junit.Test;%0A%0A%0Aimport static org.junit.Assert.assertEquals;%0A%0Apublic class TaxCalculatorTest %7B%0A%0A    // Tests for calculatePersonalAllowance method%0A%0A    @Test%0A    public void testPersonalAllowanceCalculationForAnnualIncomeOf0() throws Exception %7B%0A        // The personal allowance for a salary of %C2%A30 is the maximum %C2%A310,600%0A        TaxCalculator taxCalculator = new TaxCalculator(0);%0A        int result = taxCalculator.calculatePersonalAllowance();%0A        assertEquals(1060000, result);%0A    %7D%0A%0A    @Test%0A    public void testPersonalAllowanceCalculationForAnnualIncomeOf100001() throws Exception %7B%0A        // The personal allowance for a salary of %C2%A3100,001 is the maximum %C2%A310,600%0A        TaxCalculator taxCalculator = new TaxCalculator(10000100);%0A        int result = taxCalculator.calculatePersonalAllowance();%0A        assertEquals(1060000, result);%0A    %7D%0A%0A    @Test%0A    public void testPersonalAllowanceCalculationForAnnualIncomeOf100002() throws Exception %7B%0A        // %C2%A31 is removed from the personal allowance for every %C2%A32 over %C2%A3100,000%0A        // The personal allowance for a salary of %C2%A3100,002 should be %C2%A310,599%0A        TaxCalculator taxCalculator = new TaxCalculator(10000200);%0A        int result = taxCalculator.calculatePersonalAllowance();%0A        assertEquals(1059900, result);%0A    %7D%0A%0A    @Test%0A    public void testPersonalAllowanceCalculationForAnnualIncomeOf121199() throws Exception %7B%0A        // The personal allowance for a salary of %C2%A3121,199 should be %C2%A31%0A        TaxCalculator taxCalculator = new TaxCalculator(12119900);%0A        int result = taxCalculator.calculatePersonalAllowance();%0A        assertEquals(100, result);%0A    %7D%0A%0A    @Test%0A    public void testPersonalAllowanceCalculationForAnnualIncomeOf121200() throws Exception %7B%0A        // There is no personal allowance for a salary of %C2%A3121,200 or over%0A        TaxCalculator taxCalculator = new TaxCalculator(12120000);%0A        int result = taxCalculator.calculatePersonalAllowance();%0A        assertEquals(0, result);%0A    %7D%0A%0A    @Test%0A    public void testPersonalAllowanceCalculationForAnnualIncomeOf1000000() throws Exception %7B%0A        // There is no personal allowance for a salary of %C2%A31,000,000%0A        // This checks that it's not possible to have a negative personal allowance%0A        TaxCalculator taxCalculator = new TaxCalculator(100000000);%0A        int result = taxCalculator.calculatePersonalAllowance();%0A        assertEquals(0, result);%0A    %7D%0A%0A%0A%7D

Add unit tests for calculatePersonalAllowance method