Arch::Test::Tree(3pm)

NAME
Arch::Test::Tree - A test framework for Arch-Perl

SYNOPSIS
    use Arch::Test::Framework;

    my $fw = Arch::Test::Framework->new;
    my $tree = $fw->make_tree($dir, $version);

    my $dir = $tree->add_dir;
    $tree->add_file($dir);
    $tree->import;

DESCRIPTION
Arch::Test::Tree provides methods to quickly build and modify Arch project trees within the Arch::Test framework.

METHODS
new, root, framework, run_tla, add_file, add_dir, add_link, modify_file, rename_file, rename_dir, remove_file, remove_dir, inventory, import, commit.

new [framework] [path]
    Create a new Arch::Test::Tree instance for path. This method should not be called directly.

root
    Returns the project trees root directory.

framework
    Returns the associated Arch::Test::Framework reference.

run_tla @args
    Run "tla @args" from the tree root.

add_file [dir [name [content]]]
    Add a new file name in directory dir. Fill file with content.

    dir defaults to the project root ("."). If name is not specified, a unique filename is generated. A default content is generated if none is given.

add_dir [parent [name]]
    Add a new directory under parent, or "." if parent is not specified. If name is not given, a unique name is generated.

add_link [parent [name [target]]]
    Add a new symbolic link under parent, or "." if parent is not specified. If name is not given, a unique name is generated. If target is omitted, a (probably) non-existing target is generated.

modify_file file [content]
    Change files content to content, or append "Has been modified." if new content is omitted.

rename_file old new
    Rename file old to new. Returns new.

rename_dir old new
    Rename directory old to new. Returns new.

remove_file file
    Delete file and its associated arch id.

remove_dir dir
    Recursively delete dir and its content.

inventory [flags]
    Returns the inventory as generated by running "tla inventory flags". flags default to "-Bs" if not specified.

import [summary [log]]
    Create a "base-0" revision from tree using the summary line summary and log as log text. If tree contains a log file, summary and log can be omitted.

commit [summary [log]]
    Commit a "patch-n" revision from tree using the summary line summary and log as log text. If tree contains a log file, summary and log can be omitted.

AUTHORS
Mikhael Goikhman (migo@homemail.com--Perl-GPL/arch-perl--devel).

Enno Cramer (uebergeek@web.de--2003/arch-perl--devel).