/** * Concatenates last search term with new one. * * @param searchTerm searchTerm {@link SearchTerm} concatenate. * @see #and(SearchTerm) * @see #or(SearchTerm) */ protected void concat(SearchTerm searchTerm) { if (nextIsNot) { searchTerm = new NotTerm(searchTerm); nextIsNot = false; } if (operatorAnd) { and(searchTerm); } else { or(searchTerm); } }
@Test void testOr2Alt() { final EmailFilter emailFilter = filter().or() .from(FROM) .to(TO); final SearchTerm expected = new OrTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ); assertEquals(expected, emailFilter.searchTerm); }
@Test void testOr2() { final EmailFilter emailFilter = filter().or( filter().from(FROM), filter().to(TO) ); final SearchTerm expected = new OrTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ); assertEquals(expected, emailFilter.searchTerm); }
@Test void testAndOrNotAlt() { final EmailFilter emailFilter = filter() .or( filter().and( filter().from(FROM), filter().to(TO) ), filter().not(filter().subject(SUBJECT)), filter().from(FROM_2) ); final SearchTerm expected = new OrTerm( new SearchTerm[]{ new AndTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ), new NotTerm( new SubjectTerm(SUBJECT) ), new FromStringTerm(FROM_2) } ); assertEquals(expected, emailFilter.searchTerm); }
@Test void testAndOrNot() { final EmailFilter emailFilter = filter() .from(FROM) .to(TO) .or() .not() .subject(SUBJECT) .from(FROM_2); final SearchTerm expected = new OrTerm( new OrTerm( new AndTerm( new FromStringTerm(FROM), new RecipientStringTerm(Message.RecipientType.TO, TO) ), new NotTerm( new SubjectTerm(SUBJECT) ) ), new FromStringTerm(FROM_2) ); assertEquals(expected, emailFilter.searchTerm); }
/** * Concatenates last search term with new one. * * @param searchTerm searchTerm {@link SearchTerm} concatenate. * @see #and(SearchTerm) * @see #or(SearchTerm) */ protected void concat(SearchTerm searchTerm) { if (nextIsNot) { searchTerm = new NotTerm(searchTerm); nextIsNot = false; } if (operatorAnd) { and(searchTerm); } else { or(searchTerm); } }