Quellcode durchsuchen

Add some tests to paths

Daniele Bartolini vor 13 Jahren
Ursprung
Commit
af1c8f7445
1 geänderte Dateien mit 33 neuen und 1 gelöschten Zeilen
  1. 33 1
      tests/paths.cpp

+ 33 - 1
tests/paths.cpp

@@ -9,6 +9,23 @@ int main()
 {	
 	char path_output[128];
 	
+	// Test is_valid_segment
+	assert(path::is_valid_segment(".") == false);
+	
+	assert(path::is_valid_segment("/") == false);
+	
+	assert(path::is_valid_segment("\\") == false);
+
+	assert(path::is_valid_segment(":") == false);
+	
+	assert(path::is_valid_segment("tga/") == false);
+	
+	assert(path::is_valid_segment("tga\\foo") == false);
+	
+	assert(path::is_valid_segment("tga") == true);
+	
+	assert(path::is_valid_segment("back_texture") == true);
+	
 	// Test pathname
 	path::pathname("/home/project/texture.tga", path_output, 128);
 	assert(string::strcmp("/home/project", path_output) == 0);
@@ -40,12 +57,13 @@ int main()
 	
 	path::filename("", path_output, 128);
 	assert(string::strcmp("", path_output) == 0);
-	
+
 	// Test basename
 	path::basename("/home/project/texture.tga", path_output, 128);
 	assert(string::strcmp("texture", path_output) == 0);
 	
 	path::basename("/home/project/textureabc", path_output, 128);
+	printf(path_output);
 	assert(string::strcmp("textureabc", path_output) == 0);
 	
 	path::basename("/hom.e/proj./e.ct/textu.reabc", path_output, 128);
@@ -72,5 +90,19 @@ int main()
 	
 	path::extension("/home/project.x/texture.tga", path_output, 128);
 	assert(string::strcmp("tga", path_output) == 0);
+	
+	// Test filename_without_extension
+	path::filename_without_extension("/home/project/texture.tga", path_output, 128);
+	assert(string::strcmp("/home/project/texture", path_output) == 0);
+	
+	// Test strip_trailing_separator
+	path::strip_trailing_separator("/home/project/texture.tga", path_output, 128);
+	assert(string::strcmp("/home/project/texture.tga", path_output) == 0);
+	
+	path::strip_trailing_separator("/home/project/texture2.tga/", path_output, 128);
+	assert(string::strcmp("/home/project/texture2.tga", path_output) == 0);
+	
+	path::strip_trailing_separator("texture.tga", path_output, 128);
+	assert(string::strcmp("texture.tga", path_output) == 0);
 }