public void testSortWithoutId() throws Exception { SortIteratorTag tag = new SortIteratorTag(); tag.setComparator("comparator"); tag.setSource("source"); tag.setPageContext(pageContext); tag.doStartTag(); // if not an Iterator, just let the ClassCastException be thrown as error instead of failure Iterator sortedIterator = (Iterator) stack.findValue("top"); assertNotNull(sortedIterator); // 1 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(1)); // 2 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(2)); // 3. assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(3)); // 4. assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(4)); // 5 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(5)); assertFalse(sortedIterator.hasNext()); tag.doEndTag(); }
public void testSortWithIdIteratorAvailableInPageContext() throws Exception { SortIteratorTag tag = new SortIteratorTag(); tag.setId("myId"); tag.setComparator("comparator"); tag.setSource("source"); tag.setPageContext(pageContext); tag.doStartTag(); { Iterator sortedIterator = (Iterator) pageContext.getAttribute("myId"); assertNotNull(sortedIterator); // 1 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(1)); // 2 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(2)); // 3 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(3)); // 4 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(4)); // 5 assertTrue(sortedIterator.hasNext()); assertEquals(sortedIterator.next(), new Integer(5)); assertFalse(sortedIterator.hasNext()); } tag.doEndTag(); }
public void testSortWithIllegalComparator() throws Exception { SortIteratorTag tag = new SortIteratorTag(); tag.setComparator("badComparator"); tag.setSource("source"); try { tag.setPageContext(pageContext); tag.doStartTag(); tag.doEndTag(); fail("JspException expected"); } catch (JspException e) { // good assertTrue(true); } }