SessionScopeExtractor implements AttributeExtractor { @Override public Object getValue(String key) { if (context.getSession() == null) { return null; } return context.getAttribute(key, PageContext.SESSION_SCOPE); } SessionScopeExtractor(PageContext context); @Override void removeValue(String name); @Override Enumeration<String> getKeys(); @Override Object getValue(String key); @Override void setValue(String key, Object value);  }
@Test public void testGetValue() { expect(context.getSession()).andReturn(session); expect(context.getAttribute("key", PageContext.SESSION_SCOPE)).andReturn("value"); replay(context, session); assertEquals("value", extractor.getValue("key")); verify(context, session); }
@Test public void testGetValueNoSession() { expect(context.getSession()).andReturn(null); replay(context, session); assertNull(extractor.getValue("key")); verify(context, session); }