static int runTestCase(int casenum) {
		switch (casenum) {
		case 0: {
			String[] files = { "ContestApplet.jnlp", ".", "Image.jpg", "..", "Book.pdf", "Movie.avi" };
			String[] expected__ = { "ContestApplet.jnlp", "Movie.avi", "Image.jpg", "Book.pdf", "..", "." };

			return verifyCase(casenum, expected__, new EllysDirectoryListing().getFiles(files));
		}
		case 1: {
			String[] files = { "Image.jpg", "..", "." };
			String[] expected__ = { "Image.jpg", "..", "." };

			return verifyCase(casenum, expected__, new EllysDirectoryListing().getFiles(files));
		}
		case 2: {
			String[] files = { "..", ".", "Image.jpg" };
			String[] expected__ = { "Image.jpg", ".", ".." };

			return verifyCase(casenum, expected__, new EllysDirectoryListing().getFiles(files));
		}
		case 3: {
			String[] files = { "No", "..", "Zaphod", ".", "Just", "very", "very...", "Improbable" };
			String[] expected__ = { "No", "Improbable", "Zaphod", "very...", "Just", "very", ".", ".." };

			return verifyCase(casenum, expected__, new EllysDirectoryListing().getFiles(files));
		}
		case 4: {
			String[] files = { "www.topcoder.com", "Ever.tried", ".", "Ever.failed", "..", "No", "Matter.", "Try",
					"Again.", "Fail", "Again..", "Fail.Better" };
			String[] expected__ = { "www.topcoder.com", "Ever.tried", "Fail.Better", "Ever.failed", "Again..", "No",
					"Matter.", "Try", "Again.", "Fail", "..", "." };

			return verifyCase(casenum, expected__, new EllysDirectoryListing().getFiles(files));
		}
		case 5: {
			String[] files = { "This", ".", "is", "tricky", "test", ".." };
			String[] expected__ = { "This", "test", "is", "tricky", "..", "." };

			return verifyCase(casenum, expected__, new EllysDirectoryListing().getFiles(files));
		}

		// custom cases

		/*
		 * case 6: {
		 * String[] files = ;
		 * String[] expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * EllysDirectoryListing().getFiles(files));
		 * }
		 */
		/*
		 * case 7: {
		 * String[] files = ;
		 * String[] expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * EllysDirectoryListing().getFiles(files));
		 * }
		 */
		/*
		 * case 8: {
		 * String[] files = ;
		 * String[] expected__ = ;
		 *
		 * return verifyCase(casenum, expected__, new
		 * EllysDirectoryListing().getFiles(files));
		 * }
		 */
		default:
			return -1;
		}
	}