public boolean accept(File directory, String fileName) {
boolean fileOK = true;
if (name != null) {
fileOK &= fileName.startsWith(name);
}
if (pattern != null) {
fileOK &= Pattern.matches(regex, fileName);
}
if (extension != null) {
fileOK &= fileName.endsWith('.' + extension);
}
return fileOK;
}
2 に答える
5
以下は別の書き方です。複数のシナリオをテストする必要があるため、データ駆動型のアプローチを使用しました (複数の if がメソッドに含まれています)。
def "should accept valid filenames"() {
expect:
foobar.accept(new File("/tmp"), fileName)
where:
fileName << ["valid_filename_1", "valid_filename_2", "valid_filename_n"]
}
于 2012-05-14T20:44:38.710 に答える
1
はい!
def "file should be valid"() {
setup:
def dir = new File("/tmp")
def fileName = "foo.bar"
when:
boolean valid = foobar.accept(dir, fileName)
then:
valid
}
于 2012-05-14T20:24:45.007 に答える