int main(int argc,const char** argv)
{
    //
    error_examples();
    //
    example1_main();
    //
    test_refvarval_1();
    test_bboard_1();
    test_bboard_2();
    test_bboard_3();
    //
    //test_biotypes();
    //
    test_parent();
    test_vector();
    test_malloc();
    test_pnode_1();
    //
    test_dao_1();
    test_dao_2();
    //
    test_io_1();
    test_io_2();
    test_io_3();

    //
    return 0;
}
Exemple #2
0
int
main (int   argc,
      char *argv[])
{
	test_new ();
	test_alloc ();
	test_realloc ();
	test_free ();
	test_discard ();
	test_ref ();
	test_unref ();
	test_parent ();
	test_local ();

	return 0;
}
static void path_test() {
	
	test_path(".", ".");
	test_path("./", ".");
	test_path(".////./././//././/", ".");
	test_path("./a", "a");
	test_path(".////./././//././/a", "a");
	test_path("./..", "..");
	test_path(".////./././//././/..", "..");
	test_path("./a/..", ".");
	
	test_path("/a", "/a");
	test_path("/a/b", "/a/b");
	test_path("/a/b/c", "/a/b/c");
	test_path("/a/", "/a");
	test_path("/a/b", "/a/b");
	test_path("/a/b/c/./", "/a/b/c");
	
	test_path("/", "/");
	test_path("/..", "/..");
	test_path("/../", "/..");
	test_path("/..//", "/..");
	test_path("/../..", "/../..");
	test_path("/..//..", "/../..");
	test_path("/../../", "/../..");
	test_path("/..//../", "/../..");
	test_path("/../..//", "/../..");
	test_path("/..//..//", "/../..");
	
	test_path("/a", "/a");
	test_path("/a/..", "/");
	test_path("/a/../", "/");
	test_path("/a/..//", "/");
	test_path("/a/../..", "/..");
	test_path("/a/..//..", "/..");
	test_path("/a/../../", "/..");
	test_path("/a/..//../", "/..");
	test_path("/a/../..//", "/..");
	test_path("/a/..//..//", "/..");
	
	test_path("/abcd", "/abcd");
	test_path("/abcd/..", "/");
	test_path("/abcd/../", "/");
	test_path("/abcd/..//", "/");
	test_path("/abcd/../..", "/..");
	test_path("/abcd/..//..", "/..");
	test_path("/abcd/../../", "/..");
	test_path("/abcd/..//../", "/..");
	test_path("/abcd/../..//", "/..");
	test_path("/abcd/..//..//", "/..");
	
	test_path("/../a", "/../a");
	test_path("/../a/", "/../a");
	test_path("/../a//", "/../a");
	test_path("/../a/..", "/..");
	test_path("/../a//..", "/..");
	test_path("/../a/../", "/..");
	test_path("/../a//../", "/..");
	test_path("/../a/..//", "/..");
	test_path("/../a//..//", "/..");
	
	// -------
	
	test_path("a", "a");
	test_path("a/b", "a/b");
	test_path("a/", "a");
	test_path("a/b/", "a/b");
	
	test_path("", "");
	test_path("..", "..");
	test_path("../", "..");
	test_path("..//", "..");
	test_path("../..", "../..");
	test_path("..//..", "../..");
	test_path("../../", "../..");
	test_path("..//../", "../..");
	test_path("../..//", "../..");
	test_path("..//..//", "../..");
	
	test_path("a", "a");
	test_path("a/..", ".");
	test_path("a/../", ".");
	test_path("a/..//", ".");
	test_path("a/../..", "..");
	test_path("a/..//..", "..");
	test_path("a/../../", "..");
	test_path("a/..//../", "..");
	test_path("a/../..//", "..");
	test_path("a/..//..//", "..");
	
	test_path("abcd", "abcd");
	test_path("abcd/..", ".");
	test_path("abcd/../", ".");
	test_path("abcd/..//", ".");
	test_path("abcd/../..", "..");
	test_path("abcd/..//..", "..");
	test_path("abcd/../../", "..");
	test_path("abcd/..//../", "..");
	test_path("abcd/../..//", "..");
	test_path("abcd/..//..//", "..");
	
	test_path("../a", "../a");
	test_path("../a/", "../a");
	test_path("../a//", "../a");
	test_path("../a/..", "..");
	test_path("../a//..", "..");
	test_path("../a/../", "..");
	test_path("../a//../", "..");
	test_path("../a/..//", "..");
	test_path("../a//..//", "..");
	
	test_path("/.", "/");
	
	// --- 
	
	test_resolve(".", "a", "a");
	test_resolve(".", "a/b", "a/b");
	test_resolve(".", "..", "..");
	test_resolve(".", "a", "a");
	test_resolve("a", "..", ".");
	test_resolve("a/b", "..", "a");
	test_resolve("a/b", "../..", ".");
	test_resolve("a", "..", ".");
	
	test_resolve(".", "", ".");
	test_resolve(".", "a/..", ".");
	
	test_resolve("/a", "b", "/a/b");
	test_resolve("/a", "b/c", "/a/b/c");
	test_resolve("/a/b", "c", "/a/b/c");
	
	test_resolve("/..", "..", "/../..");
	
	test_resolve("/a", "..", "/");
	test_resolve("/a", "../..", "/..");
	test_resolve("/a/..", "..", "/..");
	
	test_resolve("/abcd", "..", "/");
	test_resolve("/abcd", "../..", "/..");
	test_resolve("/abcd/..", "..", "/..");
	
	test_resolve("/" , "../a", "/../a");
	test_resolve("/..", "a", "/../a");
	test_resolve("/", "../a/..", "/..");
	test_resolve("/..", "a/..", "/..");
	test_resolve("/../a", "..", "/..");
	
	// ---
	
	test_parent("", "..");
	test_parent(".", "..");
	test_parent("a", ".");
	test_parent("a/b", "a");
	test_parent("/", "/..");
	test_parent("/a", "/");
	test_parent("/a/b", "/a");
	test_parent("..", "../..");
	test_parent("../..", "../../..");
	
}