Ich habe einige Dateien, die nur mit meinem Testprogramm gehören und wäre verwirrend mit der Hauptbibliothek zu verteilen.Einschließlich Datendateien nur in Cabal Test Suites
Leider gilt die .cabal data-files
field nur für eine gesamte Cabal-Datei, nicht ein einzelner Abschnitt wie die test-suite
. Wenn ich versuche, es in einer Testsuite Strophe zu verwenden, bekomme ich nur:
Warning: ssh.cabal: Unknown fields: data-files (line 71)
Gibt es eine natürliche Art und Weise, diese Dateien mit meinem Testprogramm zu verknüpfen, so dass sie um nur kopiert werden, wenn --enable-tests
angegeben ist?
Wenn es keinen besseren Weg gibt, werde ich wahrscheinlich Template Haskell verwenden, um sie in die ausführbare Datei einzubetten und sie dann zur Laufzeit oder so wieder zu schreiben, aber es fühlt sich ziemlich hässlich an.
Bedeutet das nicht, dass die Testsuite-Binärdatei erraten muss, wo der Quellcode lebt? –
Ganesh, Ich habe meine Antwort bearbeitet, um die Speicherorte der Testdaten zu adressieren. –