standalone = true; $def1->attr = array( 0 => array('old-include'), 'old-attr' => $old, 'overloaded-attr' => $overloaded_old, 'removed-attr' => $removed, ); $def1->attr_transform_pre = $def1->attr_transform_post = array( 'old-transform' => $old, 'overloaded-transform' => $overloaded_old, 'removed-transform' => $removed, ); $def1->child = $overloaded_old; $def1->content_model = 'old'; $def1->content_model_type = $overloaded_old; $def1->auto_close = array( 'old' => true, 'removed-old' => true ); $def1->descendants_are_inline = $overloaded_old; $def1->excludes = array( 'old' => true, 'removed-old' => true ); $def2->standalone = false; $def2->attr = array( 0 => array('new-include'), 'new-attr' => $new, 'overloaded-attr' => $overloaded_new, 'removed-attr' => false, ); $def2->attr_transform_pre = $def2->attr_transform_post = array( 'new-transform' => $new, 'overloaded-transform' => $overloaded_new, 'removed-transform' => false, ); $def2->child = $new; $def2->content_model = 'new'; $def2->content_model_type = $overloaded_new; $def2->auto_close = array( 'new' => true, 'removed-old' => false ); $def2->descendants_are_inline = $overloaded_new; $def2->excludes = array( 'new' => true, 'removed-old' => false ); $def1->mergeIn($def2); $def1->mergeIn($def3); // empty, has no effect $this->assertIdentical($def1->standalone, true); $this->assertIdentical($def1->attr, array( 0 => array('old-include', 'new-include'), 'old-attr' => $old, 'overloaded-attr' => $overloaded_new, 'new-attr' => $new, )); $this->assertIdentical($def1->attr_transform_pre, $def1->attr_transform_post); $this->assertIdentical($def1->attr_transform_pre, array( 'old-transform' => $old, 'overloaded-transform' => $overloaded_new, 'new-transform' => $new, )); $this->assertIdentical($def1->child, $new); $this->assertIdentical($def1->content_model, 'old | new'); $this->assertIdentical($def1->content_model_type, $overloaded_new); $this->assertIdentical($def1->auto_close, array( 'old' => true, 'new' => true )); $this->assertIdentical($def1->descendants_are_inline, $overloaded_new); $this->assertIdentical($def1->excludes, array( 'old' => true, 'new' => true )); } } ?>