aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/core/platform/env_test.cc
diff options
context:
space:
mode:
authorGravatar Jonathan Hseu <jhseu@google.com>2016-11-04 11:53:50 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2016-11-04 13:05:51 -0700
commit879e0accd1c833771c8058d3eb5f2d4f06f895d4 (patch)
tree81635e1bd758cd8a8e5ec760db70fc72f6480c66 /tensorflow/core/platform/env_test.cc
parenta2c8e99777cc0b961fb42106af5bd527a43e76f7 (diff)
Change FileExists to return tensorflow::Status.
Also done separately by @llhe at github.com/tensorflow/tensorflow/pull/5370. We needed to do this change internally to fix all callers. Motivation: The existing FileExists interface doesn't allow callers to distinguish between file not found vs. filesystem errors. Semantics changes: - gfile.Exists in Python now throws an exception for filesystem errors. It continues to return true/false if it can accurately determine whether a file exists. - RecursivelyCreateDir now returns errors for filesystem errors when calling FileExists. Change: 138224013
Diffstat (limited to 'tensorflow/core/platform/env_test.cc')
-rw-r--r--tensorflow/core/platform/env_test.cc26
1 files changed, 13 insertions, 13 deletions
diff --git a/tensorflow/core/platform/env_test.cc b/tensorflow/core/platform/env_test.cc
index f6fa27327a..52ced38ac8 100644
--- a/tensorflow/core/platform/env_test.cc
+++ b/tensorflow/core/platform/env_test.cc
@@ -161,10 +161,10 @@ TEST_F(DefaultEnvTest, DeleteRecursively) {
env_->DeleteRecursively(parent_dir, &undeleted_files, &undeleted_dirs));
EXPECT_EQ(0, undeleted_files);
EXPECT_EQ(0, undeleted_dirs);
- EXPECT_FALSE(env_->FileExists(root_file1));
- EXPECT_FALSE(env_->FileExists(root_file2));
- EXPECT_FALSE(env_->FileExists(root_file3));
- EXPECT_FALSE(env_->FileExists(child1_file1));
+ EXPECT_EQ(error::Code::NOT_FOUND, env_->FileExists(root_file1).code());
+ EXPECT_EQ(error::Code::NOT_FOUND, env_->FileExists(root_file2).code());
+ EXPECT_EQ(error::Code::NOT_FOUND, env_->FileExists(root_file3).code());
+ EXPECT_EQ(error::Code::NOT_FOUND, env_->FileExists(child1_file1).code());
}
TEST_F(DefaultEnvTest, DeleteRecursivelyFail) {
@@ -174,7 +174,7 @@ TEST_F(DefaultEnvTest, DeleteRecursivelyFail) {
int64 undeleted_files, undeleted_dirs;
Status s =
env_->DeleteRecursively(parent_dir, &undeleted_files, &undeleted_dirs);
- EXPECT_EQ("Not found: Directory doesn't exist", s.ToString());
+ EXPECT_EQ(error::Code::NOT_FOUND, s.code());
EXPECT_EQ(0, undeleted_files);
EXPECT_EQ(1, undeleted_dirs);
}
@@ -183,7 +183,7 @@ TEST_F(DefaultEnvTest, RecursivelyCreateDir) {
const string create_path = io::JoinPath(BaseDir(), "a//b/c/d");
TF_CHECK_OK(env_->RecursivelyCreateDir(create_path));
TF_CHECK_OK(env_->RecursivelyCreateDir(create_path)); // repeat creation.
- EXPECT_TRUE(env_->FileExists(create_path));
+ TF_EXPECT_OK(env_->FileExists(create_path));
}
TEST_F(DefaultEnvTest, RecursivelyCreateDirEmpty) {
@@ -195,14 +195,14 @@ TEST_F(DefaultEnvTest, RecursivelyCreateDirSubdirsExist) {
const string subdir_path = io::JoinPath(BaseDir(), "a/b");
TF_CHECK_OK(env_->CreateDir(io::JoinPath(BaseDir(), "a")));
TF_CHECK_OK(env_->CreateDir(subdir_path));
- EXPECT_TRUE(env_->FileExists(subdir_path));
+ TF_EXPECT_OK(env_->FileExists(subdir_path));
// Now try to recursively create a/b/c/d/
const string create_path = io::JoinPath(BaseDir(), "a/b/c/d/");
TF_CHECK_OK(env_->RecursivelyCreateDir(create_path));
TF_CHECK_OK(env_->RecursivelyCreateDir(create_path)); // repeat creation.
- EXPECT_TRUE(env_->FileExists(create_path));
- EXPECT_TRUE(env_->FileExists(io::JoinPath(BaseDir(), "a/b/c")));
+ TF_EXPECT_OK(env_->FileExists(create_path));
+ TF_EXPECT_OK(env_->FileExists(io::JoinPath(BaseDir(), "a/b/c")));
}
TEST_F(DefaultEnvTest, LocalFileSystem) {
@@ -243,10 +243,10 @@ TEST_F(DefaultEnvTest, SleepForMicroseconds) {
class TmpDirFileSystem : public NullFileSystem {
public:
- bool FileExists(const string& dir) override {
+ Status FileExists(const string& dir) override {
StringPiece scheme, host, path;
io::ParseURI(dir, &scheme, &host, &path);
- if (path.empty()) return false;
+ if (path.empty()) return errors::NotFound(dir, " not found");
return Env::Default()->FileExists(io::JoinPath(BaseDir(), path));
}
@@ -268,10 +268,10 @@ REGISTER_FILE_SYSTEM("tmpdirfs", TmpDirFileSystem);
TEST_F(DefaultEnvTest, RecursivelyCreateDirWithUri) {
Env* env = Env::Default();
const string create_path = "tmpdirfs://testhost/a/b/c/d";
- EXPECT_FALSE(env->FileExists(create_path));
+ EXPECT_EQ(error::Code::NOT_FOUND, env->FileExists(create_path).code());
TF_CHECK_OK(env->RecursivelyCreateDir(create_path));
TF_CHECK_OK(env->RecursivelyCreateDir(create_path)); // repeat creation.
- EXPECT_TRUE(env->FileExists(create_path));
+ TF_EXPECT_OK(env->FileExists(create_path));
}
} // namespace tensorflow