/sitebricks/src/test/java/com/google/sitebricks/rendering/control/WidgetRegistryTest.java
http://github.com/dhanji/sitebricks · Java · 38 lines · 29 code · 6 blank · 3 comment · 0 complexity · b71395fd57497b59d1a2ca4b4e015945 MD5 · raw file
- package com.google.sitebricks.rendering.control;
- import com.google.inject.Injector;
- import com.google.sitebricks.MvelEvaluator;
- import com.google.sitebricks.Renderable;
- import com.google.sitebricks.compiler.EvaluatorCompiler;
- import com.google.sitebricks.compiler.ExpressionCompileException;
- import com.google.sitebricks.routing.PageBook;
- import static org.easymock.EasyMock.createMock;
- import static org.easymock.EasyMock.createNiceMock;
- import org.testng.annotations.DataProvider;
- import org.testng.annotations.Test;
- /**
- * @author Dhanji R. Prasanna (dhanji@gmail.com)
- */
- public class WidgetRegistryTest {
- private static final String WIDGETS_AND_KEYS = "widgetsAndKeys";
- @DataProvider(name = WIDGETS_AND_KEYS)
- public Object[][] get() {
- return new Object[][] {
- { "twidg", TextFieldWidget.class },
- { "teasdasxt", RepeatWidget.class },
- { "sastext", ShowIfWidget.class },
- };
- }
- @Test(dataProvider = WIDGETS_AND_KEYS)
- public final void storeRetrieveWidgets(final String key, final Class<Renderable> expected) throws ExpressionCompileException {
- final WidgetRegistry registry = new DefaultWidgetRegistry(new MvelEvaluator(), createNiceMock(PageBook.class), createNiceMock(Injector.class));
- registry.add(key, expected);
- Renderable widget = registry.newWidget(key, "some=expression", new ProceedingWidgetChain(), createMock(EvaluatorCompiler.class));
- assert expected.isInstance(widget) : "Wrong widget returned";
- }
- }