static int runTestCase(int casenum__) {
		switch (casenum__) {
		case 0: {
			int[] arrivals = { 10, 0, 0, 4, 20 };
			int numPerDay = 8;
			int expected__ = 6;

			return verifyCase(casenum__, expected__,
					new WidgetRepairs().days(arrivals, numPerDay));
		}
		case 1: {
			int[] arrivals = { 0, 0, 0 };
			int numPerDay = 10;
			int expected__ = 0;

			return verifyCase(casenum__, expected__,
					new WidgetRepairs().days(arrivals, numPerDay));
		}
		case 2: {
			int[] arrivals = { 100, 100 };
			int numPerDay = 10;
			int expected__ = 20;

			return verifyCase(casenum__, expected__,
					new WidgetRepairs().days(arrivals, numPerDay));
		}
		case 3: {
			int[] arrivals = { 27, 0, 0, 0, 0, 9 };
			int numPerDay = 9;
			int expected__ = 4;

			return verifyCase(casenum__, expected__,
					new WidgetRepairs().days(arrivals, numPerDay));
		}
		case 4: {
			int[] arrivals = { 6, 5, 4, 3, 2, 1, 0, 0, 1, 2, 3, 4, 5, 6 };
			int numPerDay = 3;
			int expected__ = 15;

			return verifyCase(casenum__, expected__,
					new WidgetRepairs().days(arrivals, numPerDay));
		}

		// custom cases

		case 5: {
			int[] arrivals = new int[] { 11, 0, 1, 2 };
			int numPerDay = 4;
			int expected__ = 4;

			return verifyCase(casenum__, expected__,
					new WidgetRepairs().days(arrivals, numPerDay));
		}
		/*
		 * case 6: { int[] arrivals = ; int numPerDay = ; int expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * WidgetRepairs().days(arrivals, numPerDay)); }
		 */
		/*
		 * case 7: { int[] arrivals = ; int numPerDay = ; int expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * WidgetRepairs().days(arrivals, numPerDay)); }
		 */
		default:
			return -1;
		}
	}