@Test
public void HoldsProperty() throws Exception
{
final TestElement a = TestElement.TYPE.instantiate();
try
{
final TestElement aa = a.getElement().content( true );
assertTrue( a.getElement().holds( aa.getValue() ) );
assertTrue( a.getElement().holds( aa.getTransient() ) );
assertTrue( a.getElement().holds( aa.getElement() ) );
assertTrue( a.getElement().holds( aa.getList() ) );
assertFalse( a.getValue().holds( aa.getValue() ) );
assertFalse( a.getTransient().holds( aa.getValue() ) );
assertFalse( a.getList().holds( aa.getValue() ) );
final TestElement aaa = aa.getList().insert();
assertTrue( a.getElement().holds( aaa.getValue() ) );
assertTrue( a.getElement().holds( aaa.getTransient() ) );
assertTrue( a.getElement().holds( aaa.getElement() ) );
assertTrue( a.getElement().holds( aaa.getList() ) );
assertFalse( a.getValue().holds( aaa.getValue() ) );
assertFalse( a.getTransient().holds( aaa.getValue() ) );
assertFalse( a.getList().holds( aaa.getValue() ) );
assertTrue( aa.getList().holds( aaa.getValue() ) );
assertTrue( aa.getList().holds( aaa.getTransient() ) );
assertTrue( aa.getList().holds( aaa.getElement() ) );
assertTrue( aa.getList().holds( aaa.getList() ) );
assertFalse( aa.getValue().holds( aaa.getValue() ) );
assertFalse( aa.getTransient().holds( aaa.getValue() ) );
assertFalse( aa.getElement().holds( aaa.getValue() ) );
}
finally
{
a.dispose();
}