Release it. I just wrote very similar code for a bunch of xml filter modules. Take some xml, change it, spit it out.
I use a data directory with pairs of source/expected files (They get named test_name.a.source, test_name.a.expected, test_name.b.source, test_name.b.expected, ...) If there is failure, I write a failure file to the same directory, with a timestamp appended. This is for easy diffs. I'd definitely like to have separate source/expected files.
I still have individual .t files, so I can add tests that don't fit into the other structure.