@Test
	@Points(value = 5)
	public void checkThatGridPackingConstructorIsDoingTheRightThingInternally()
	{
		// ************************************************************************************
		// Note: This isn't a standard test case to run in industry, but is a great test case
		// for students who will encounter this problem for the first time
		// ************************************************************************************
		TEST_GOAL_MESSAGE = "Check that GridPackingImpl_Student constructor is doing the right thing internally";
		final int ROW_COUNT = 7;
		final int COLUMN_COUNT = 3;

		List<CatCage> catCageList = new ArrayList<CatCage>();
		for (int i = 0; i < ROW_COUNT * COLUMN_COUNT; i++)
		{
			CatCage catCage = new CatCageImpl_Nunez("" + i, FEMALE_CARACAL, MALE_OCELOT, null, MALE_TIGER);
			catCageList.add(catCage);
		}
		GridPacking<CatCage> gridPacking = new GridPackingImpl_Nunez<CatCage>(ROW_COUNT, COLUMN_COUNT, catCageList);

		int i = 0;
		for (int j = 0; j < ROW_COUNT; j++)
		{
			for (int k = 0; k < COLUMN_COUNT; k++)
			{
				CatCage catCage = gridPacking.getElementAt(j, k);
				String identifier = catCage.getIdentifier();
				assertEquals(String.format("idenifier should be %s, not %s", i, identifier), "" + i, identifier);
				i++;
			}
		}

		// ************************************************************************************
		// THE REAL TEST IS COMING UP
		// ************************************************************************************
		int indexOfLastElement = catCageList.size() - 1;
		catCageList.remove(indexOfLastElement);
		// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		// Changing catCageList here should not
		// affect the gridPacking. If you are
		// failing this test after getting this
		// far, figure out how catCageList and
		// gridPacking are still "connected" at
		// this point.
		// ************************************************************************************

		i = 0;
		for (int j = 0; j < ROW_COUNT; j++)
		{
			for (int k = 0; k < COLUMN_COUNT; k++)
			{
				CatCage catCage = gridPacking.getElementAt(j, k);
				String identifier = catCage.getIdentifier();
				assertEquals(String.format("idenifier should be %s, not %s", i, identifier), "" + i, identifier);
				i++;
			}
		}
	}