< prev index next >

test/hotspot/gtest/runtime/test_classLoader.cpp

Print this page
rev 58452 : imported patch pkg_name_from_class

*** 24,92 **** #include "precompiled.hpp" #include "classfile/classLoader.hpp" #include "memory/resourceArea.hpp" #include "unittest.hpp" - // Tests ClassLoader::package_from_name() - TEST_VM(classLoader, null_class_name) { - ResourceMark rm; - bool bad_class_name = false; - const char* retval= ClassLoader::package_from_name(NULL, &bad_class_name); - ASSERT_TRUE(bad_class_name) << "Function did not set bad_class_name with NULL class name"; - ASSERT_STREQ(retval, NULL) << "Wrong package for NULL class name pointer"; - } - - TEST_VM(classLoader, empty_class_name) { - ResourceMark rm; - const char* retval = ClassLoader::package_from_name(""); - ASSERT_STREQ(retval, NULL) << "Wrong package for empty string"; - } - - TEST_VM(classLoader, no_slash) { - ResourceMark rm; - const char* retval = ClassLoader::package_from_name("L"); - ASSERT_STREQ(retval, NULL) << "Wrong package for class with no slashes"; - } - - TEST_VM(classLoader, just_slash) { - ResourceMark rm; - bool bad_class_name = false; - const char* retval = ClassLoader::package_from_name("/", &bad_class_name); - ASSERT_TRUE(bad_class_name) << "Function did not set bad_class_name with package of length 0"; - ASSERT_STREQ(retval, NULL) << "Wrong package for class with just slash"; - } - - TEST_VM(classLoader, multiple_slashes) { - ResourceMark rm; - const char* retval = ClassLoader::package_from_name("///"); - ASSERT_STREQ(retval, "//") << "Wrong package for class with just slashes"; - } - - TEST_VM(classLoader, standard_case_1) { - ResourceMark rm; - bool bad_class_name = true; - const char* retval = ClassLoader::package_from_name("package/class", &bad_class_name); - ASSERT_FALSE(bad_class_name) << "Function did not reset bad_class_name"; - ASSERT_STREQ(retval, "package") << "Wrong package for class with one slash"; - } - - TEST_VM(classLoader, standard_case_2) { - ResourceMark rm; - const char* retval = ClassLoader::package_from_name("package/folder/class"); - ASSERT_STREQ(retval, "package/folder") << "Wrong package for class with multiple slashes"; - } - - TEST_VM(classLoader, class_array) { - ResourceMark rm; - bool bad_class_name = false; - const char* retval = ClassLoader::package_from_name("[package/class", &bad_class_name); - ASSERT_FALSE(bad_class_name) << "Function set bad_class_name with class array"; - ASSERT_STREQ(retval, "package") << "Wrong package for class with leading bracket"; - } - - TEST_VM(classLoader, class_object_array) { - ResourceMark rm; - bool bad_class_name = false; - const char* retval = ClassLoader::package_from_name("[Lpackage/class", &bad_class_name); - ASSERT_TRUE(bad_class_name) << "Function did not set bad_class_name with array of class objects"; - ASSERT_STREQ(retval, NULL) << "Wrong package for class with leading '[L'"; - } --- 24,28 ----
< prev index next >