diff options
Diffstat (limited to 'runtime/class_loader_context_test.cc')
-rw-r--r-- | runtime/class_loader_context_test.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/runtime/class_loader_context_test.cc b/runtime/class_loader_context_test.cc index e082c8cbcf..4d7e390b9a 100644 --- a/runtime/class_loader_context_test.cc +++ b/runtime/class_loader_context_test.cc @@ -1316,6 +1316,20 @@ TEST_F(ClassLoaderContextTest, EncodeContextsForUnsupportedChainMultiDex) { encodings.at(GetTestDexFileName("MultiDex"))); } +TEST_F(ClassLoaderContextTest, IsValidEncoding) { + ASSERT_TRUE(ClassLoaderContext::IsValidEncoding("PCL[]")); + ASSERT_TRUE(ClassLoaderContext::IsValidEncoding("PCL[foo.dex]")); + ASSERT_TRUE(ClassLoaderContext::IsValidEncoding("PCL[foo.dex];PCL[bar.dex]")); + ASSERT_TRUE(ClassLoaderContext::IsValidEncoding("DLC[];PCL[bar.dex]")); + ASSERT_TRUE( + ClassLoaderContext::IsValidEncoding( + ClassLoaderContext::kUnsupportedClassLoaderContextEncoding)); + ASSERT_FALSE(ClassLoaderContext::IsValidEncoding("not_valid")); + ASSERT_FALSE(ClassLoaderContext::IsValidEncoding("[]")); + ASSERT_FALSE(ClassLoaderContext::IsValidEncoding("FCL[]")); + ASSERT_FALSE(ClassLoaderContext::IsValidEncoding("foo.dex:bar.dex")); +} + // TODO(calin) add a test which creates the context for a class loader together with dex_elements. TEST_F(ClassLoaderContextTest, CreateContextForClassLoader) { // The chain is |