New matchers for checking the contents of a directory!

Features

// check paths by comparing to another directory
actualDir must haveSamePathsAs(expectedDir).withFilter((file: File) => !file.isHidden)

// now check files
// the default comparison expects that files are text files and that comparison must be done line by line
actualDir must haveSameFilesAs(expectedDir)

// with a file filter applied to both the actual and expected directories
actualDir must haveSameFilesAs(expectedDir)

// with a MD5 matcher for binary files
actualDir must haveSameFilesAs(expectedDir).withFilter((file: File) => isBinary(file)).withMatcher(haveSameMD5)
  • haveSameMD5 is a matcher checking if two files have the same MD5 hash

Fixes

  • resolved a name clash of two "lazyfy" methods (by @asflierl) #212
  • fixed the display of code when using Markdown and triple quotes

==========================