@Override public Component deserialize( JsonParser parser, DeserializationContext context ) throws IOException { ObjectCodec oc = parser.getCodec(); JsonNode node = oc.readTree( parser ); Component component = new Component(); JsonNode n; if(( n = node.get( NAME )) != null ) component.setName( n.textValue()); if(( n = node.get( COMP_INSTALLER )) != null ) component.setInstallerName( n.textValue()); return component; } }
@Test public void testHashCode() { Component comp = new Component(); Assert.assertTrue( comp.hashCode() > 0 ); comp.setName( "comp" ); Assert.assertTrue( comp.hashCode() > 0 ); }
Assert.assertFalse( iterator.hasNext()); comp.setName( "my # component" ); iterator = RuntimeModelValidator.validate( comp ).iterator(); Assert.assertEquals( ErrorCode.RM_INVALID_COMPONENT_NAME, iterator.next().getErrorCode()); Assert.assertFalse( iterator.hasNext()); comp.setName( "my.component" ); iterator = RuntimeModelValidator.validate( comp ).iterator(); Assert.assertEquals( ErrorCode.RM_DOT_IS_NOT_ALLOWED, iterator.next().getErrorCode()); Assert.assertFalse( iterator.hasNext()); comp.setName( "comp" ); iterator = RuntimeModelValidator.validate( comp ).iterator(); Assert.assertEquals( ErrorCode.RM_EMPTY_COMPONENT_INSTALLER, iterator.next().getErrorCode());
@Test public void testSearchForLoop() { Component c1 = new Component( "c1" ); Assert.assertNull( ComponentHelpers.searchForLoop( c1 )); Component c11 = new Component( "c11" ); c1.addChild( c11 ); Assert.assertNull( ComponentHelpers.searchForLoop( c1 )); Component c12 = new Component( "c1" ); c1.addChild( c12 ); Assert.assertEquals( "c1 -> c1", ComponentHelpers.searchForLoop( c1 )); Assert.assertNull( ComponentHelpers.searchForLoop( c11 )); Assert.assertNull( ComponentHelpers.searchForLoop( c12 )); c12.setName( "c12" ); Component c121 = new Component( "c1" ); c12.addChild( c121 ); Assert.assertEquals( "c1 -> c12 -> c1", ComponentHelpers.searchForLoop( c1 )); Assert.assertNull( ComponentHelpers.searchForLoop( c11 )); Assert.assertNull( ComponentHelpers.searchForLoop( c12 )); Assert.assertNull( ComponentHelpers.searchForLoop( c121 )); c121.setName( "c121" ); c121.addChild( c1 ); Assert.assertEquals( "c1 -> c12 -> c121 -> c1", ComponentHelpers.searchForLoop( c1 )); Assert.assertEquals( "c12 -> c121 -> c1 -> c12", ComponentHelpers.searchForLoop( c12 )); Assert.assertEquals( "c121 -> c1 -> c12 -> c121", ComponentHelpers.searchForLoop( c121 )); Assert.assertNull( ComponentHelpers.searchForLoop( c11 )); }