Menu

[4a4584]: / Source / I_CoverageConfiguration.pas  Maximize  Restore  History

Download this file

81 lines (72 with data), 2.9 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
(***********************************************************************)
(* Delphi Code Coverage *)
(* *)
(* A quick hack of a Code Coverage Tool for Delphi *)
(* by Christer Fahlgren and Nick Ring *)
(* *)
(* This Source Code Form is subject to the terms of the Mozilla Public *)
(* License, v. 2.0. If a copy of the MPL was not distributed with this *)
(* file, You can obtain one at http://mozilla.org/MPL/2.0/. *)
unit I_CoverageConfiguration;
interface
uses
Classes,
ModuleNameSpaceUnit,
I_LogManager;
type
ICoverageConfiguration = interface
procedure ParseCommandLine(const ALogManager: ILogManager = nil);
function ApplicationParameters: string;
function ExeFileName: string;
function MapFileName: string;
function OutputDir: string;
function SourceDir: string;
function SourcePaths: TStrings;
function Units: TStrings;
function ExcludedUnits: TStrings;
function DebugLogFile: string;
function UseApiDebug: Boolean;
function IsComplete(var AReason: string): Boolean;
function EmmaOutput: Boolean;
function EmmaOutput21: Boolean;
function SeparateMeta: Boolean;
function XmlOutput: Boolean;
function XmlLines: Boolean;
function HtmlOutput: Boolean;
function TestExeExitCode: Boolean;
function ModuleNameSpace(const AModuleName: string): TModuleNameSpace;
function UnitNameSpace(const AModuleName: string): TUnitNameSpace;
function LineCountLimit: Integer;
end;
const
cESCAPE_CHARACTER : char = '^';
cDEFULT_DEBUG_LOG_FILENAME = 'Delphi-Code-Coverage-Debug.log';
cPARAMETER_VERBOSE = '-v';
cPARAMETER_EXECUTABLE = '-e';
cPARAMETER_MAP_FILE = '-m';
cPARAMETER_UNIT = '-u';
cPARAMETER_UNIT_FILE = '-uf';
cPARAMETER_SOURCE_DIRECTORY = '-sd';
cPARAMETER_OUTPUT_DIRECTORY = '-od';
cPARAMETER_EXECUTABLE_PARAMETER = '-a';
cPARAMETER_LOGGING_TEXT = '-lt';
cPARAMETER_LOGGING_WINAPI = '-lapi';
cPARAMETER_FILE_EXTENSION_INCLUDE = '-ife';
cPARAMETER_FILE_EXTENSION_EXCLUDE = '-efe';
cPARAMETER_SOURCE_PATHS = '-sp';
cPARAMETER_SOURCE_PATHS_FILE = '-spf';
cPARAMETER_EMMA_OUTPUT = '-emma';
cPARAMETER_EMMA21_OUTPUT = '-emma21';
cPARAMETER_XML_OUTPUT = '-xml';
cPARAMETER_XML_LINES = '-xmllines';
cPARAMETER_HTML_OUTPUT = '-html';
cPARAMETER_DPROJ = '-dproj';
cPARAMETER_EXCLUDE_SOURCE_MASK = '-esm';
cPARAMETER_MODULE_NAMESPACE = '-mns';
cPARAMETER_UNIT_NAMESPACE = '-uns';
cPARAMETER_EMMA_SEPARATE_META = '-meta';
cPARAMETER_TESTEXE_EXIT_CODE = '-tec';
cPARAMETER_LINE_COUNT = '-lcl';
cIGNORE_UNIT_PREFIX = '!';
implementation
end.
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.