summaryrefslogtreecommitdiff
path: root/tests/resources/crlf_data
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@edwardthomson.com>2018-12-01 21:46:51 +0000
committerEdward Thomson <ethomson@edwardthomson.com>2018-12-03 17:01:25 -0800
commit3d804063d902608145e9bac6c89e7ef644584edf (patch)
tree563525b6c0132a50dbaa6b1dbf3825b98a6fd91c /tests/resources/crlf_data
parenta0ab90b8819b86227c944050f223f05c19a12a39 (diff)
downloadlibgit2-3d804063d902608145e9bac6c89e7ef644584edf.tar.gz
crlf_data: add corpus of known-good odb-filtered data
Use the crlf data scripts to produce a corpus of known-good data in "git" format (aka ODB format) from a variety of files with different line endings. `git` created these files running `git add` to stage the contents then extracting the data from the repository. We'll use these to ensure that we create identical contents when we add files into the index.
Diffstat (limited to 'tests/resources/crlf_data')
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/HEAD1
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/branches0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf.fail1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/.gitattributes1
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/zero-byte0
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf22
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf4
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf3
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom5
-rw-r--r--tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/zero-byte0
6257 files changed, 32690 insertions, 0 deletions
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_false/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_true/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_false,safecrlf_warn/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_false/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_true/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_input,safecrlf_warn/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_false/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf.fail b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_true/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/HEAD b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/HEAD
new file mode 100644
index 000000000..cb089cd89
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/HEAD
@@ -0,0 +1 @@
+ref: refs/heads/master
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/branches b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/branches
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/branches
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/zero-byte b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/posix_to_odb/autocrlf_true,safecrlf_warn/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_false/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_true/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_false,safecrlf_warn/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_false/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_true/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_input,safecrlf_warn/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_false/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail
new file mode 100644
index 000000000..26690f37e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..c6b706d60
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..3c6cbace0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail
new file mode 100644
index 000000000..180663eca
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..f87ce3f16
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail
new file mode 100644
index 000000000..63eac58a4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/binary-mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'binary-mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail
new file mode 100644
index 000000000..a353e0e82
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail
new file mode 100644
index 000000000..0287e3250
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/mixed-lf-cr.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'mixed-lf-cr'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
new file mode 100644
index 000000000..213f972a6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail
new file mode 100644
index 000000000..851ef6c77
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'all-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
new file mode 100644
index 000000000..c23959d76
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'few-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
new file mode 100644
index 000000000..2e093c93e
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'many-utf8-chars-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..43b93dbe3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail
new file mode 100644
index 000000000..b1a5dc9e5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-crlf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
new file mode 100644
index 000000000..13c4e3c58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail
new file mode 100644
index 000000000..c964c725a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/more-lf.fail
@@ -0,0 +1 @@
+CRLF would be replaced by LF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail
new file mode 100644
index 000000000..547008e0f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf.fail
new file mode 100644
index 000000000..d992d4720
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/all-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'all-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail
new file mode 100644
index 000000000..fabf46617
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/few-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'few-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail
new file mode 100644
index 000000000..b874f4bb9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/many-utf8-chars-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'many-utf8-chars-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail
new file mode 100644
index 000000000..e77b2b976
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail
new file mode 100644
index 000000000..07f50c353
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-crlf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-crlf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail
new file mode 100644
index 000000000..6994a8d01
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf-utf8bom.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf-utf8bom'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf.fail b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf.fail
new file mode 100644
index 000000000..067a2e896
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/more-lf.fail
@@ -0,0 +1 @@
+LF would be replaced by CRLF in 'more-lf'
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_true/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..aecf25037
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/.gitattributes
new file mode 100644
index 000000000..fa1385d99
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* -text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,-text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..e20264803
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..21fd7f251
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fae8897c8
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..92be83e26
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..fcadb2cf9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/.gitattributes
new file mode 100644
index 000000000..9acf740d4
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes
new file mode 100644
index 000000000..0c42f3cc2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_crlf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes
new file mode 100644
index 000000000..6313b56c5
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto,eol_lf/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/.gitattributes b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/.gitattributes
new file mode 100644
index 000000000..176a458f9
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/.gitattributes
@@ -0,0 +1 @@
+* text=auto
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn,text_auto/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf
new file mode 100644
index 000000000..a9a2e8913
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf-utf8bom
new file mode 100644
index 000000000..0aa76e474
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-crlf
new file mode 100644
index 000000000..0e0528888
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-crlf
new file mode 100644
index 000000000..cd574f5a2
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf
new file mode 100644
index 000000000..0ff5a53f1
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf-utf8bom
new file mode 100644
index 000000000..ea030d3c6
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf
new file mode 100644
index 000000000..04de00b35
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf-utf8bom
new file mode 100644
index 000000000..dc88e3b91
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/_workdir/zero-byte
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf
new file mode 100644
index 000000000..26e1a742b
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom
new file mode 100644
index 000000000..32c6f22e3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-crlf-utf8bom
@@ -0,0 +1,4 @@
+crlf
+crlf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf
new file mode 100644
index 000000000..799770d1c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom
new file mode 100644
index 000000000..7cce67e58
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/all-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+lf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf
new file mode 100644
index 000000000..85340755c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-crlf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf
new file mode 100644
index 000000000..af6fcf6da
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-all-lf
@@ -0,0 +1,4 @@
+one
+two
+three
+four
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr
new file mode 100644
index 000000000..203555c56
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf
new file mode 100644
index 000000000..aaf083a9c
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/binary-mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-crlf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf
new file mode 100644
index 000000000..f4d25b796
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/few-utf8-chars-lf
@@ -0,0 +1,22 @@
+⚽The rest is ASCII01.
+The rest is ASCII02.
+The rest is ASCII03.
+The rest is ASCII04.
+The rest is ASCII05.
+The rest is ASCII06.
+The rest is ASCII07.
+The rest is ASCII08.
+The rest is ASCII09.
+The rest is ASCII10.
+The rest is ASCII11.
+The rest is ASCII12.
+The rest is ASCII13.
+The rest is ASCII14.
+The rest is ASCII15.
+The rest is ASCII16.
+The rest is ASCII17.
+The rest is ASCII18.
+The rest is ASCII19.
+The rest is ASCII20.
+The rest is ASCII21.
+The rest is ASCII22.
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-crlf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf
new file mode 100644
index 000000000..9a6c3533f
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/many-utf8-chars-lf
@@ -0,0 +1,4 @@
+Lets sing!
+♫♪♬♩
+Eat food
+🍅🍕
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr
new file mode 100644
index 000000000..d11e7ef63
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf
new file mode 100644
index 000000000..417786fc3
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/mixed-lf-cr-crlf
@@ -0,0 +1,3 @@
+one
+two three
+four \ No newline at end of file
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf
new file mode 100644
index 000000000..37bb7fa3d
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom
new file mode 100644
index 000000000..16001a14a
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-crlf-utf8bom
@@ -0,0 +1,5 @@
+crlf
+crlf
+lf
+crlf
+crlf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf
new file mode 100644
index 000000000..2cda6f203
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom
new file mode 100644
index 000000000..dc7d82aa0
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/more-lf-utf8bom
@@ -0,0 +1,5 @@
+lf
+lf
+crlf
+lf
+lf
diff --git a/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/zero-byte b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/zero-byte
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/tests/resources/crlf_data/windows_to_odb/autocrlf_true,safecrlf_warn/zero-byte