var dsl = createObject("component", "reporting_dsl.querydsl").init("beb"); var result = dsl.parse("cat"); assertEquals("beb", result.field); var result = dsl.parse("cat"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("cat", result.value); assertFalse(result.negated); result = dsl.parse("'my keyword'"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("my keyword", result.value); assertFalse(result.negated); result = dsl.parse('"my keyword"'); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("my keyword", result.value); assertFalse(result.negated); var result = dsl.parse("'cat:dog'"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("cat:dog", result.value); assertFalse(result.negated); result = dsl.parse("tag:'cat:dog'"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("cat:dog", result.value); assertFalse(result.negated); var result = dsl.parse("tag:cat"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("cat", result.value); assertFalse(result.negated); result = dsl.parse("tag:'my tag'"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("my tag", result.value); assertFalse(result.negated); result = dsl.parse('tag:"my tag"'); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("my tag", result.value); assertFalse(result.negated); var result = dsl.parse("-cat"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("cat", result.value); assertTrue(result.negated); result = dsl.parse("-'my keyword'"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("my keyword", result.value); assertTrue(result.negated); result = dsl.parse('-"my keyword"'); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("keyword", result.field); assertEquals("my keyword", result.value); assertTrue(result.negated); var result = dsl.parse("!tag:cat"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("cat", result.value); assertTrue(result.negated); result = dsl.parse("!tag:'my tag'"); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("my tag", result.value); assertTrue(result.negated); result = dsl.parse('!tag:"my tag"'); assertTrue(isInstanceOf(result, "reporting_dsl.simplecriterion")); assertEquals("tag", result.field); assertEquals("my tag", result.value); assertTrue(result.negated); var result = dsl.parse("cat dog"); assertTrue(isInstanceOf(result, "reporting_dsl.andcriterion")); assertTrue(isInstanceOf(result.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right, "reporting_dsl.simplecriterion")); assertEquals("cat", result.left.value); assertEquals("dog", result.right.value); var result = dsl.parse("cat dog bird"); assertTrue(isInstanceOf(result, "reporting_dsl.andcriterion")); assertTrue(isInstanceOf(result.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right, "reporting_dsl.andcriterion")); assertTrue(isInstanceOf(result.right.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right.right, "reporting_dsl.simplecriterion")); assertEquals("cat", result.left.value); assertEquals("dog", result.right.left.value); assertEquals("bird", result.right.right.value); var result = dsl.parse("cat OR dog"); assertTrue(isInstanceOf(result, "reporting_dsl.orcriterion")); assertTrue(isInstanceOf(result.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right, "reporting_dsl.simplecriterion")); assertEquals("cat", result.left.value); assertEquals("dog", result.right.value); var result = dsl.parse("cat dog OR bird"); assertTrue(isInstanceOf(result, "reporting_dsl.andcriterion")); assertTrue(isInstanceOf(result.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right, "reporting_dsl.orcriterion")); assertTrue(isInstanceOf(result.right.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right.right, "reporting_dsl.simplecriterion")); assertEquals("cat", result.left.value); assertEquals("dog", result.right.left.value); assertEquals("bird", result.right.right.value); var result = dsl.parse("cat OR dog bird"); assertTrue(isInstanceOf(result, "reporting_dsl.andcriterion")); assertTrue(isInstanceOf(result.left, "reporting_dsl.orcriterion")); assertTrue(isInstanceOf(result.left.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.left.right, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right, "reporting_dsl.simplecriterion")); assertEquals("cat", result.left.left.value); assertEquals("dog", result.left.right.value); assertEquals("bird", result.right.value); var result = dsl.parse("(cat dog) OR bird"); assertTrue(isInstanceOf(result, "reporting_dsl.orcriterion")); assertTrue(isInstanceOf(result.left, "reporting_dsl.andcriterion")); assertTrue(isInstanceOf(result.left.left, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.left.right, "reporting_dsl.simplecriterion")); assertTrue(isInstanceOf(result.right, "reporting_dsl.simplecriterion")); assertEquals("cat", result.left.left.value); assertEquals("dog", result.left.right.value); assertEquals("bird", result.right.value);