Чистый код. Создание, анализ и рефакторинг — страница 80 из 94

  91     assertEquals(3, monthCodeToQuarter(AUGUST));

  92     assertEquals(3, monthCodeToQuarter(SEPTEMBER));

  93     assertEquals(4, monthCodeToQuarter(OCTOBER));

  94     assertEquals(4, monthCodeToQuarter(NOVEMBER));

  95     assertEquals(4, monthCodeToQuarter(DECEMBER));

  96

  97     try {

  98       monthCodeToQuarter(-1);

  99       fail("Invalid Month Code should throw exception");

100     } catch (IllegalArgumentException e) {

101     }

102   }

103

104   public void testMonthCodeToString() throws Exception {

105     assertEquals("January", monthCodeToString(JANUARY));

106     assertEquals("February", monthCodeToString(FEBRUARY));

107     assertEquals("March", monthCodeToString(MARCH));

108     assertEquals("April", monthCodeToString(APRIL));

109     assertEquals("May", monthCodeToString(MAY));

110     assertEquals("June", monthCodeToString(JUNE));

111     assertEquals("July", monthCodeToString(JULY));

112     assertEquals("August", monthCodeToString(AUGUST));

113     assertEquals("September", monthCodeToString(SEPTEMBER));

114     assertEquals("October", monthCodeToString(OCTOBER));

115     assertEquals("November", monthCodeToString(NOVEMBER));

116     assertEquals("December", monthCodeToString(DECEMBER));

117

118     assertEquals("Jan", monthCodeToString(JANUARY, true));

119     assertEquals("Feb", monthCodeToString(FEBRUARY, true));

120     assertEquals("Mar", monthCodeToString(MARCH, true));

121     assertEquals("Apr", monthCodeToString(APRIL, true));

122     assertEquals("May", monthCodeToString(MAY, true));

123     assertEquals("Jun", monthCodeToString(JUNE, true));

124     assertEquals("Jul", monthCodeToString(JULY, true));

125     assertEquals("Aug", monthCodeToString(AUGUST, true));

126     assertEquals("Sep", monthCodeToString(SEPTEMBER, true));

127     assertEquals("Oct", monthCodeToString(OCTOBER, true));

128     assertEquals("Nov", monthCodeToString(NOVEMBER, true));

129     assertEquals("Dec", monthCodeToString(DECEMBER, true));

130

131     try {

132       monthCodeToString(-1);

133       fail("Invalid month code should throw exception");

134     } catch (IllegalArgumentException e) {

135     }

136

137   }


Листинг Б.4 (продолжение)

138

139   public void testStringToMonthCode() throws Exception {

140     assertEquals(JANUARY,stringToMonthCode("1"));

141     assertEquals(FEBRUARY,stringToMonthCode("2"));

142     assertEquals(MARCH,stringToMonthCode("3"));

143     assertEquals(APRIL,stringToMonthCode("4"));

144     assertEquals(MAY,stringToMonthCode("5"));

145     assertEquals(JUNE,stringToMonthCode("6"));

146     assertEquals(JULY,stringToMonthCode("7"));

147     assertEquals(AUGUST,stringToMonthCode("8"));

148     assertEquals(SEPTEMBER,stringToMonthCode("9"));

149     assertEquals(OCTOBER,stringToMonthCode("10"));

150     assertEquals(NOVEMBER, stringToMonthCode("11"));

151     assertEquals(DECEMBER,stringToMonthCode("12"));

152

153 //todo    assertEquals(-1, stringToMonthCode("0"));

154 //    assertEquals(-1, stringToMonthCode("13"));

155

156     assertEquals(-1,stringToMonthCode("Hello"));

157

158     for (int m = 1; m <= 12; m++) {

159       assertEquals(m, stringToMonthCode(monthCodeToString(m, false)));

160       assertEquals(m, stringToMonthCode(monthCodeToString(m, true)));

161     }

162

163 //    assertEquals(1,stringToMonthCode("jan"));

164 //    assertEquals(2,stringToMonthCode("feb"));

165 //    assertEquals(3,stringToMonthCode("mar"));

166 //    assertEquals(4,stringToMonthCode("apr"));

167 //    assertEquals(5,stringToMonthCode("may"));

168 //    assertEquals(6,stringToMonthCode("jun"));

169 //    assertEquals(7,stringToMonthCode("jul"));

170 //    assertEquals(8,stringToMonthCode("aug"));

171 //    assertEquals(9,stringToMonthCode("sep"));

172 //    assertEquals(10,stringToMonthCode("oct"));

173 //    assertEquals(11,stringToMonthCode("nov"));

174 //    assertEquals(12,stringToMonthCode("dec"));

175

176 //    assertEquals(1,stringToMonthCode("JAN"));

177 //    assertEquals(2,stringToMonthCode("FEB"));

178 //    assertEquals(3,stringToMonthCode("MAR"));

179 //    assertEquals(4,stringToMonthCode("APR"));

180 //    assertEquals(5,stringToMonthCode("MAY"));

181 //    assertEquals(6,stringToMonthCode("JUN"));

182 //    assertEquals(7,stringToMonthCode("JUL"));

183 //    assertEquals(8,stringToMonthCode("AUG"));

184 //    assertEquals(9,stringToMonthCode("SEP"));

185 //    assertEquals(10,stringToMonthCode("OCT"));

186 //    assertEquals(11,stringToMonthCode("NOV"));

187 //    assertEquals(12,stringToMonthCode("DEC"));

188

189 //    assertEquals(1,stringToMonthCode("january"));

190 //    assertEquals(2,stringToMonthCode("february"));

191 //    assertEquals(3,stringToMonthCode("march"));

192 //    assertEquals(4,stringToMonthCode("april"));

193 //    assertEquals(5,stringToMonthCode("may"));

194 //    assertEquals(6,stringToMonthCode("june"));

195 //    assertEquals(7,stringToMonthCode("july"));

196 //    assertEquals(8,stringToMonthCode("august"));

197 //    assertEquals(9,stringToMonthCode("september"));

198 //    assertEquals(10,stringToMonthCode("october"));

199 //    assertEquals(11,stringToMonthCode("november"));

200 //    assertEquals(12,stringToMonthCode("december"));

201

202 //    assertEquals(1,stringToMonthCode("JANUARY"));

203 //    assertEquals(2,stringToMonthCode("FEBRUARY"));