@Test
	public void jobTokenization2() {
		Tokens tokens = new Tokens("jobA|BROKEN=$END|'*'=something");
		assertToken(TokenKind.IDENTIFIER, "jobA", 0, 4, tokens.next());
		assertToken(TokenKind.PIPE, "|", 4, 5, tokens.next());
		assertToken(TokenKind.IDENTIFIER, "BROKEN", 5, 11, tokens.next());
		assertToken(TokenKind.EQUALS, "=", 11, 12, tokens.next());
		assertToken(TokenKind.IDENTIFIER, "$END", 12, 16, tokens.next());
		assertToken(TokenKind.PIPE, "|", 16, 17, tokens.next());
		assertToken(TokenKind.LITERAL_STRING, "'*'", 17, 20, tokens.next());
		assertToken(TokenKind.EQUALS, "=", 20, 21, tokens.next());
		assertToken(TokenKind.IDENTIFIER, "something", 21, 30, tokens.next());
	}
Parse job specifications and verify either the correct abstract syntax tree is produced or the current exception comes out.
The parser does no semantic validation, it is purely syntax checking.

@author Andy Clement
spring-xd-dirt/src/test/java/org/springframework/xd/dirt/job/dsl/JobParserTests.java