Initialize the bootstrap class path from standard sources.

Change-Id: Ib49d21f98fd76504e5d3675fc731261426ca84ed
diff --git a/src/runtime_test.cc b/src/runtime_test.cc
new file mode 100644
index 0000000..4b59cb3
--- /dev/null
+++ b/src/runtime_test.cc
@@ -0,0 +1,69 @@
+// Copyright 2011 Google Inc. All Rights Reserved.
+
+#include "src/runtime.h"
+
+#include "gtest/gtest.h"
+
+namespace art {
+void ParseClassPath(const char* class_path, std::vector<std::string>* vec);
+}
+
+namespace {
+
+TEST(RuntimeTest, ParseClassPath) {
+  std::vector<std::string> vec;
+
+  art::ParseClassPath("", &vec);
+  EXPECT_EQ(0U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":", &vec);
+  EXPECT_EQ(0U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":foo", &vec);
+  EXPECT_EQ(1U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath("foo:", &vec);
+  EXPECT_EQ(1U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":foo:", &vec);
+  EXPECT_EQ(1U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath("foo:bar", &vec);
+  EXPECT_EQ(2U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":foo:bar", &vec);
+  EXPECT_EQ(2U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath("foo:bar:", &vec);
+  EXPECT_EQ(2U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":foo:bar:", &vec);
+  EXPECT_EQ(2U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath("foo:bar:baz", &vec);
+  EXPECT_EQ(3U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":foo:bar:baz", &vec);
+  EXPECT_EQ(3U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath("foo:bar:baz:", &vec);
+  EXPECT_EQ(3U, vec.size());
+  vec.clear();
+
+  art::ParseClassPath(":foo:bar:baz:", &vec);
+  EXPECT_EQ(3U, vec.size());
+  vec.clear();
+}
+
+}  // namespace