static int runTestCase(int casenum) {
		switch (casenum) {
		case 0: {
			String hats = ".o.";
			int numSwaps = 1;
			int expected__ = 0;

			return verifyCase(casenum, expected__,
					new BallAndHats().getHat(hats, numSwaps));
		}
		case 1: {
			String hats = "..o";
			int numSwaps = 0;
			int expected__ = 2;

			return verifyCase(casenum, expected__,
					new BallAndHats().getHat(hats, numSwaps));
		}
		case 2: {
			String hats = "o..";
			int numSwaps = 1;
			int expected__ = 1;

			return verifyCase(casenum, expected__,
					new BallAndHats().getHat(hats, numSwaps));
		}
		case 3: {
			String hats = "..o";
			int numSwaps = 2;
			int expected__ = 0;

			return verifyCase(casenum, expected__,
					new BallAndHats().getHat(hats, numSwaps));
		}
		case 4: {
			String hats = "o..";
			int numSwaps = 101;
			int expected__ = 1;

			return verifyCase(casenum, expected__,
					new BallAndHats().getHat(hats, numSwaps));
		}

		case 5: {
			String hats = "..o";
			int numSwaps = 1000;
			int expected__ = 0;

			return verifyCase(casenum, expected__,
					new BallAndHats().getHat(hats, numSwaps));
		}

		// custom cases

		/*
		 * case 6: { String hats = ; int numSwaps = ; int expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new BallAndHats().getHat(hats,
		 * numSwaps)); }
		 */
		/*
		 * case 7: { String hats = ; int numSwaps = ; int expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new BallAndHats().getHat(hats,
		 * numSwaps)); }
		 */
		default:
			return -1;
		}
	}