vdl.buildView(facesContext, viewRoot);
stateManagement.suscribeListeners(viewRoot);
viewRoot.getAttributes().put("somekey", "somevalue");
HtmlOutputText a = new HtmlOutputText();
a.setId("output1");
a.setValue("testOutput1");
viewRoot.getChildren().add(a);
Object state1 = stateManagement.saveView(facesContext);
stateToRestore = state1;
facesContext.setViewRoot(null);
stateManagement.restoreView(facesContext, "/root", viewRoot.getRenderKitId());
viewRoot = facesContext.getViewRoot();
Assert.assertEquals("somevalue", viewRoot.getAttributes().get("somekey"));
Assert.assertNotNull(viewRoot.findComponent("form1"));
Assert.assertNotNull(viewRoot.findComponent("form1:foo1"));
Assert.assertNotNull(viewRoot.findComponent("form1:var1"));
Assert.assertNotNull(viewRoot.findComponent("form1:button1"));
a = (HtmlOutputText) viewRoot.findComponent("output1");
Assert.assertNotNull(a);
Assert.assertEquals("testOutput1",a.getValue());
}