anchor.diff:      procedure GetValue;
       procedure SetValue;
       procedure Attrs;
  +    procedure Add;
  +    procedure AddTwoLevels;
       procedure Childs;
  -    procedure Up;
  +    procedure Parent;
     end;
   
     TXMLNodesTest = class(TTestCase)
  -  private
  -    procedure RunAdd;
  -  published
  -    procedure Add;
  +  published
       procedure ItemByIndex;
       procedure ItemByName;
       procedure Count;
  
positive.code: end;
  
  { TXMLChildsTest }
  
  procedure TXMLChildsTest.Add;
  var
    N: IXMLNode;
    C: Integer;
  begin
    N := TXMLPack.New(TXMLStreamForTest.New).Node('/root/group/item');
    C := N.Childs.Count;
    CheckEquals(
      C + 2,
      N.Childs
        .Add('item')
        .Add('item')
        .Count
    );
  end;
  
  procedure TXMLChildsTest.ItemByIndex;
  begin
  
negative.code:   );
  end;
  
  procedure TXMLNodeTest.Add;
  var
    N: IXMLNode;
    C: Integer;
  begin
    N := TXMLPack.New(TXMLStreamForTest.New).Node('/root/group/item');
    C := N.Childs.Count;
    CheckEquals(
      C + 2,
      N.Add('item').Parent
        .Add('item').Parent
        .Childs
        .Count
    );
  end;
  
  procedure TXMLNodeTest.AddTwoLevels;
  var
    P: IXMLPack;
  begin
    P := TXMLPack.New('root');
    P.Node('/root')
      .Add('level-1')
      .Add('level-2');
    CheckNotNull(P.Node('/root/level-1/level-2'));
  end;
  
  procedure TXMLNodeTest.Childs;
  begin
    CheckNotNull(
  