Atalanta/cucumber-chef — pull request #78 by pikesley (2012-09-07 11:09:00+00:00)
Title: Multiline file content

We can now check for multi-line file content like:

* file "/foo/bar/baz" should contain
"""
this line
this other line
"""

It checks for those lines as a contiguous group. Trying to do this with regexes was an exercise in pain, so we split the relevant inputs into arrays and compare each line that way.

*NOTE:* this breaks the previous implementation of this step, where we could do something like

* file "/foo/bar/baz" should contain "this text"

This expectation must now be expressed like

* file "/foo/bar/baz" should contain
"""
this text
"""

Sorry, but it's better this way.

Also, in an improvement to an earlier commit, we can also do:

* directory "/foo/bar" should exist
* file "/foo/bar/baz" should exist
* symlink "/some/sym/link" should exist

and check that those are actually directories, files or symlinks (we also accept 'path', which will not check for type)