diff options
Diffstat (limited to 'tensorflow/core/lib/io/path_test.cc')
-rw-r--r-- | tensorflow/core/lib/io/path_test.cc | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/tensorflow/core/lib/io/path_test.cc b/tensorflow/core/lib/io/path_test.cc index f3f3d245d5..e3275b93b6 100644 --- a/tensorflow/core/lib/io/path_test.cc +++ b/tensorflow/core/lib/io/path_test.cc @@ -45,6 +45,8 @@ TEST(PathTest, IsAbsolutePath) { } TEST(PathTest, Dirname) { + EXPECT_EQ("hdfs://127.0.0.1:9000/", + Dirname("hdfs://127.0.0.1:9000/train.csv.tfrecords")); EXPECT_EQ("/hello", Dirname("/hello/")); EXPECT_EQ("/", Dirname("/hello")); EXPECT_EQ("hello", Dirname("hello/world")); @@ -97,5 +99,47 @@ TEST(PathTest, CleanPath) { EXPECT_EQ("../../bar", CleanPath("foo/../../../bar")); } +#define EXPECT_PARSE_URI(uri, scheme, host, path) \ + do { \ + StringPiece u(uri); \ + StringPiece s, h, p; \ + ParseURI(u, &s, &h, &p); \ + EXPECT_EQ(scheme, s.ToString()); \ + EXPECT_EQ(host, h.ToString()); \ + EXPECT_EQ(path, p.ToString()); \ + EXPECT_EQ(uri, CreateURI(scheme, host, path)); \ + EXPECT_LE(u.begin(), s.begin()); \ + EXPECT_GE(u.end(), s.begin()); \ + EXPECT_LE(u.begin(), s.end()); \ + EXPECT_GE(u.end(), s.end()); \ + EXPECT_LE(u.begin(), h.begin()); \ + EXPECT_GE(u.end(), h.begin()); \ + EXPECT_LE(u.begin(), h.end()); \ + EXPECT_GE(u.end(), h.end()); \ + EXPECT_LE(u.begin(), p.begin()); \ + EXPECT_GE(u.end(), p.begin()); \ + EXPECT_LE(u.begin(), p.end()); \ + EXPECT_GE(u.end(), p.end()); \ + } while (0) + +TEST(PathTest, CreateParseURI) { + EXPECT_PARSE_URI("http://foo", "http", "foo", ""); + EXPECT_PARSE_URI("/encrypted/://foo", "", "", "/encrypted/://foo"); + EXPECT_PARSE_URI("/usr/local/foo", "", "", "/usr/local/foo"); + EXPECT_PARSE_URI("file:///usr/local/foo", "file", "", "/usr/local/foo"); + EXPECT_PARSE_URI("local.file:///usr/local/foo", "local.file", "", + "/usr/local/foo"); + EXPECT_PARSE_URI("a-b:///foo", "", "", "a-b:///foo"); + EXPECT_PARSE_URI(":///foo", "", "", ":///foo"); + EXPECT_PARSE_URI("9dfd:///foo", "", "", "9dfd:///foo"); + EXPECT_PARSE_URI("file:", "", "", "file:"); + EXPECT_PARSE_URI("file:/", "", "", "file:/"); + EXPECT_PARSE_URI("hdfs://localhost:8020/path/to/file", "hdfs", + "localhost:8020", "/path/to/file"); + EXPECT_PARSE_URI("hdfs://localhost:8020", "hdfs", "localhost:8020", ""); + EXPECT_PARSE_URI("hdfs://localhost:8020/", "hdfs", "localhost:8020", "/"); +} +#undef EXPECT_PARSE_URI + } // namespace io } // namespace tensorflow |