@Test(groups = { "instance" }, invocationCount = 30)
	public void conformTest() throws Exception {
		int numPasswords = 10;
		int passLength = 8;

		System.out.println("INSTANCE TEST STARTED: Generating passwords:");
		StopWatch stopWatch = new StopWatch();
		stopWatch.start();

		PwGeneratorFlagBuilder flags = new PwGeneratorFlagBuilder();
		flags.setIncludeDigits().setIncludeCapitals()
				.setIncludeReducedSymbols().setFilterAmbiguous()
				.setDoNotEndWithSymbol().setDoNotEndWithDigit()
				.setDisableConsecSymbols();

		IPasswordPolicy passwordPolicy = new PasswordPolicy(passLength,
				passLength, 0, flags.build(), null);
		passwordPolicy.addFilter(new SimpleRegexFilter("lala",
				"(?=.{8,})(?=.*?[^\\w\\s])(?=.*?[0-9])(?=.*?[A-Z]).*?[a-z].*",
				false, false));
		passwordPolicy.addFilter(new SimpleRegexFilter("lala1", "^a.*4.*",
				false, false));
		passwordPolicy.getBlackList().add("nazi");

		String password = "nazi4_#a";

		IPwGenerator pw = new PwGenerator(passwordPolicy);

		List<String> passwords = pw.generate(numPasswords, 0, null);

		assertLengthCount(this.getClass().getSimpleName(), passLength,
				numPasswords, passwords);

		/** part two */

		Map<String, Map<String, String>> validationResult = pw
				.validate(password);

		for (String filterId : validationResult.keySet()) {
			System.out.println(filterId);
			System.out.println(validationResult.get(filterId));
		}

		Assert.assertTrue(validationResult.size() > 0);

		stopWatch.stop();
		System.out.println("\nFLAG BUILDER TEST FINISHED Runtime:"
				+ stopWatch.toString() + "\n");

	}