Thema: Code coverage

Einzelnen Beitrag anzeigen

freimatz

Registriert seit: 20. Mai 2010
1.385 Beiträge
 
Delphi 11 Alexandria
 
#57

AW: Code coverage

  Alt 18. Nov 2022, 14:04
Habe da einen schweren Fehler in CodeCoverage:
Delphi-Quellcode:
procedure TCoverageConfiguration.ReadUnitsFile(const AUnitsFileName: string);
var
  InputFile: TextFile;
  UnitLine: string;
begin
  VerboseOutput('Reading units from the following file: ' + AUnitsFileName);

  OpenInputFileForReading(AUnitsFileName, InputFile);
  try
    while not Eof(InputFile) do
    begin
      ReadLn(InputFile, UnitLine);
      // Ensures that we strip out .pas if it was added for some reason
      if FStripFileExtension then
        UnitLine := PathExtractFileNameNoExt(UnitLine);

      AddUnitString(UnitLine);
    end;
  finally
    CloseFile(InputFile);
  end;
end;
FStripFileExtension ist True (warum auch immer).
Dann macht er aus
1. "Bla.Fasel.Kachel.Suelz" das
2. "Bla.Fasel.Kachel"
An der Stelle hat der unitname gar kein ".pas".
Andersherum CodeCoverage funktioniert nicht wenn der unitname einen Punkt enthält

Müsste die Extension in der _dcov_units.lst nicht enthalten sein?
Die Doku auf https://github.com/DelphiCodeCoverag...EADME.markdown sagt nur:
"-uf filename Cover units listed in the file pointed to by filename. One unit per line in the file"
Es fehlt die Angabe ob mit oder ohne Extension und Pfad.

Der Parameter -ife hilft auch nicht. (Auch ein Fehler dort.)
Habe dort etwas ergänzt.

Geändert von freimatz (18. Nov 2022 um 14:21 Uhr)
  Mit Zitat antworten Zitat