Fixed configitem_move, first parsing tests pass now

This commit is contained in:
Christian Thaeter 2008-08-13 10:50:27 +02:00
parent 2f776858ee
commit 1dc836fc3d
3 changed files with 17 additions and 19 deletions

View file

@ -77,7 +77,7 @@ lumiera_configitem_destroy (LumieraConfigitem self)
if (self->vtable && self->vtable->destroy)
self->vtable->destroy (self);
ENSURE (!llist_is_empty (&self->lookup), "destructor didn't cleaned lookup up");
ENSURE (llist_is_empty (&self->lookup), "destructor didn't cleaned lookup up");
ENSURE (llist_is_empty (&self->childs), "destructor didn't remove childs");
llist_unlink (&self->link);
@ -122,12 +122,16 @@ lumiera_configitem_move (LumieraConfigitem self, LumieraConfigitem source)
REQUIRE (self);
REQUIRE (source);
llist_move (&self->link, &source->link);
llist_init (&self->link);
llist_insertlist_next (&self->link, &source->link);
self->parent = source->parent;
llist_move (&self->childs, &source->childs);
llist_move (&self->lookup, &source->lookup);
llist_init (&self->childs);
llist_insertlist_next (&self->childs, &source->childs);
llist_init (&self->lookup);
llist_insertlist_next (&self->lookup, &source->lookup);
self->line = source->line;
source->line = NULL;

View file

@ -135,8 +135,8 @@ END
PLANNED "bool set" <<END
END
TEST "create configitem with empty line" empty_line_configitem <<END
TEST "create configitem with empty line" configitem_simple_ctor_dtor '' <<END
END
TEST "create configitem with blank line" blank_line_configitem <<END
TEST "create configitem with blank line" configitem_simple_ctor_dtor $' \t \t' <<END
END

View file

@ -127,24 +127,18 @@ TEST ("word_get")
lumiera_config_destroy ();
}
TEST ("empty_line_configitem")
TEST ("configitem_simple_ctor_dtor")
{
REQUIRE (argv[2]);
lumiera_config_init ("./");
LumieraConfigitem item;
item = lumiera_configitem_new ( "" );
item = lumiera_configitem_new (argv[2]);
lumiera_configitem_delete(item);
item = NULL;
}
lumiera_configitem_delete (item);
TEST ("blank_line_configitem")
{
LumieraConfigitem item;
item = lumiera_configitem_new ( " " );
lumiera_configitem_delete(item);
item = NULL;
lumiera_config_destroy ();
}