static int runTestCase(int casenum__) {
		switch (casenum__) {
		case 0: {
			String[] readParts = { "introduction", "story", "introduction", "edification" };
			int expected__ = 1;

			return verifyCase(casenum__, expected__, new ReadingBooks().countBooks(readParts));
		}
		case 1: {
			String[] readParts = { "introduction", "story", "edification", "introduction", "story", "edification" };
			int expected__ = 2;

			return verifyCase(casenum__, expected__, new ReadingBooks().countBooks(readParts));
		}
		case 2: {
			String[] readParts = { "introduction", "story", "introduction", "edification", "story", "introduction" };
			int expected__ = 1;

			return verifyCase(casenum__, expected__, new ReadingBooks().countBooks(readParts));
		}
		case 3: {
			String[] readParts = { "introduction", "story", "introduction", "edification", "story",
					"story", "edification", "edification", "edification", "introduction",
					"introduction", "edification", "story", "introduction", "story",
					"edification", "edification", "story", "introduction", "edification",
					"story", "story", "edification", "introduction", "story" };
			int expected__ = 5;

			return verifyCase(casenum__, expected__, new ReadingBooks().countBooks(readParts));
		}

		// custom cases

		/*
		 * case 4: {
		 * String[] readParts = ;
		 * int expected__ = ;
		 * 
		 * return verifyCase(casenum__, expected__, new
		 * ReadingBooks().countBooks(readParts));
		 * }
		 */
		/*
		 * case 5: {
		 * String[] readParts = ;
		 * int expected__ = ;
		 * 
		 * return verifyCase(casenum__, expected__, new
		 * ReadingBooks().countBooks(readParts));
		 * }
		 */
		/*
		 * case 6: {
		 * String[] readParts = ;
		 * int expected__ = ;
		 * 
		 * return verifyCase(casenum__, expected__, new
		 * ReadingBooks().countBooks(readParts));
		 * }
		 */
		default:
			return -1;
		}
	}