pathtest.cpp

来自「C++ class libraries for network-centric,」· C++ 代码 · 共 825 行 · 第 1/2 页

CPP
825
字号
	assert (p.toString(Path::PATH_WINDOWS) == "\\");	p.parse("/usr", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 0);	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr");	p.parse("\\usr", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 0);	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr");	p.parse("/usr/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\");	p.parse("\\usr\\", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\");}void PathTest::testParseWindows2(){	Path p;	p.parse("usr/", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\");	p.parse("usr", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 0);	assert (p[0] == "usr");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr");	p.parse("usr\\", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\");		p.parse("/usr/local", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local");	p.parse("\\usr\\local", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local");	p.parse("/usr/local/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 2);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\");	p.parse("usr/local/", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 2);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\local\\");	p.parse("usr/local", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\local");	p.parse("/usr/local/bin", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 2);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin");	p.parse("/usr/local/bin/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("/usr//local/bin/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("/usr/local//bin/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("/usr/local/bin//", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");}	void PathTest::testParseWindows3(){	Path p;	p.parse("/usr/local/./bin/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("./usr/local/bin/", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\local\\bin\\");	p.parse("./usr/local/bin/./", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\local\\bin\\");	p.parse("./usr/local/bin/.", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "usr\\local\\bin\\.");	p.parse("/usr/local/lib/../bin/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("/usr/local/lib/../bin/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("\\usr\\local\\lib\\..\\bin\\", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "bin");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\bin\\");	p.parse("/usr/local/lib/../../", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "usr");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\");	p.parse("/usr/local/lib/..", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 3);	assert (p[0] == "usr");	assert (p[1] == "local");	assert (p[2] == "lib");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\usr\\local\\lib\\..");	p.parse("../usr/local/lib/", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 4);	assert (p[0] == "..");	assert (p[1] == "usr");	assert (p[2] == "local");	assert (p[3] == "lib");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "..\\usr\\local\\lib\\");	p.parse("/usr/../lib/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "lib");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\lib\\");	p.parse("/usr/../../lib/", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "lib");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\lib\\");	p.parse("local/../../lib/", Path::PATH_WINDOWS);	assert (p.isRelative());	assert (!p.isAbsolute());	assert (p.depth() == 2);	assert (p[0] == "..");	assert (p[1] == "lib");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "..\\lib\\");}void PathTest::testParseWindows4(){	Path p;	p.parse("\\\\server\\files", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "files");	assert (p.getNode() == "server");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\\\server\\files\\");	p.parse("\\\\server\\files\\", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "files");	assert (p.getNode() == "server");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\\\server\\files\\");		p.parse("\\\\server\\files\\file", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "files");	assert (p.getNode() == "server");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\\\server\\files\\file");	p.parse("\\\\server\\files\\dir\\file", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 2);	assert (p[0] == "files");	assert (p[1] == "dir");	assert (p.getNode() == "server");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\\\server\\files\\dir\\file");	p.parse("\\\\server\\files\\dir\\file", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 2);	assert (p[0] == "files");	assert (p[1] == "dir");	assert (p.getNode() == "server");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\\\server\\files\\dir\\file");		p.parse("\\\\server", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 0);	assert (p.getNode() == "server");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "\\\\server\\");		p.parse("c:\\", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 0);	assert (p.getDevice() == "c");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "c:\\");		p.parse("c:\\WinNT", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 0);	assert (p.getDevice() == "c");	assert (!p.isDirectory());	assert (p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "c:\\WinNT");		p.parse("c:\\WinNT\\", Path::PATH_WINDOWS);	assert (!p.isRelative());	assert (p.isAbsolute());	assert (p.depth() == 1);	assert (p[0] == "WinNT");	assert (p.getDevice() == "c");	assert (p.isDirectory());	assert (!p.isFile());	assert (p.toString(Path::PATH_WINDOWS) == "c:\\WinNT\\");		try	{		p.parse("

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?