skimage: if --readPath points at an empty dir, create an empty expectations file

TBR=scroggo

Review URL: https://codereview.chromium.org/17294006

git-svn-id: http://skia.googlecode.com/svn/trunk@9642 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
epoger@google.com 2013-06-17 19:34:58 +00:00
parent bb52288882
commit e0433f1ad3
4 changed files with 41 additions and 1 deletions

View File

@ -515,7 +515,8 @@ int tool_main(int argc, char** argv) {
decodeFileAndWrite(fullname.c_str(), outDirPtr);
} while (iter.next(&filename));
} else {
decodeFileAndWrite(FLAGS_readPath[i], outDirPtr);
// FLAGS_readPath[i] is an empty or nonexistent directory,
// so do nothing.
}
}

View File

@ -0,0 +1,9 @@
{
"actual-results" : {
"failed" : null,
"failure-ignored" : null,
"no-comparison" : null,
"succeeded" : null
},
"expected-results" : null
}

View File

@ -0,0 +1,9 @@
{
"actual-results" : {
"failed" : null,
"failure-ignored" : null,
"no-comparison" : null,
"succeeded" : null
},
"expected-results" : null
}

View File

@ -9,6 +9,7 @@ import filecmp
import os
import subprocess
import sys
import tempfile
class BinaryNotFoundException(Exception):
def __str__ (self):
@ -70,6 +71,26 @@ def main():
# TODO(scroggo): Add a test that compares expectations and image files that
# are known to NOT match, and make sure it returns an error.
# Generate an expectations file from an empty directory.
empty_dir = tempfile.mkdtemp()
expectations_path = os.path.join(file_dir, "skimage", "output-actual",
"empty-dir", "expectations.json")
subprocess.check_call([skimage_binary, "--readPath", empty_dir,
"--createExpectationsPath", expectations_path])
golden_expectations = os.path.join(file_dir, "skimage", "output-expected",
"empty-dir", "expectations.json")
DieIfFilesMismatch(expected=golden_expectations, actual=expectations_path)
os.rmdir(empty_dir)
# Generate an expectations file from a nonexistent directory.
expectations_path = os.path.join(file_dir, "skimage", "output-actual",
"nonexistent-dir", "expectations.json")
subprocess.check_call([skimage_binary, "--readPath", "/nonexistent/dir",
"--createExpectationsPath", expectations_path])
golden_expectations = os.path.join(file_dir, "skimage", "output-expected",
"nonexistent-dir", "expectations.json")
DieIfFilesMismatch(expected=golden_expectations, actual=expectations_path)
# Done with all tests.
print "Self tests succeeded!"