	public void test_AllPathPermutationsGeneratior() throws StopConditionException, InterruptedException {
		logger.info("TEST: test_AllPathPermutationsGeneration");
		logger.info("=======================================================================");
		GraphML gml = new GraphML();
		gml.load("graphml/permutations/simple.graphml");
		FiniteStateMachine FSM = new FiniteStateMachine();
		FSM.setModel(gml.getModel());
		FSM.setWeighted(false);
		PathGenerator pathGenerator = new AllPathPermutationsGenerator(new TestCaseLength(42));
		pathGenerator.setMachine(FSM);
		while (pathGenerator.hasNext()) {
			String[] stepPair = pathGenerator.getNext();
			int stats[] = FSM.getStatistics();
			int ec = 100 * stats[1] / stats[0];
			logger.debug("call( " + stepPair[0] + " ) then verify( " + stepPair[1] + " ) --> Edge coverage @ " + ec + "%");
		}
		assertEquals(3, ((AllPathPermutationsGenerator) pathGenerator).getDepth());
		logger.debug("==============================");
	}

	public void test_AllPathPermutationsGeneratior() throws StopConditionException, InterruptedException {
		logger.info("TEST: test_AllPathPermutationsGeneration");
		logger.info("=======================================================================");
		GraphML gml = new GraphML();
		gml.load("graphml/permutations/simple.graphml");
		FiniteStateMachine FSM = new FiniteStateMachine();
		FSM.setModel(gml.getModel());
		FSM.setWeighted(false);
		PathGenerator pathGenerator = new AllPathPermutationsGenerator(new TestCaseLength(42));
		pathGenerator.setMachine(FSM);
		while (pathGenerator.hasNext()) {
			String[] stepPair = pathGenerator.getNext();
			int stats[] = FSM.getStatistics();
			int ec = 100 * stats[1] / stats[0];
			logger.debug("call( " + stepPair[0] + " ) then verify( " + stepPair[1] + " ) --> Edge coverage @ " + ec + "%");
		}
		assertEquals(2, ((AllPathPermutationsGenerator) pathGenerator).getDepth());
		logger.debug("==============================");
	}
