Skip to content

Test Projects

Jolyon Smith edited this page Nov 14, 2013 · 8 revisions

Test projects are provided for most libraries. Coverage is currently incomplete and some units have no test coverage at all. It is hoped and expected that test coverage will increase over time.

External Dependencies

Test projects currently assume the use of the FastMM Memory Manager (FastMM4 must be on the IDE search path).

FastMM is the memory manager 'built in' to Delphi, but using the source distribution ensures that the latest version is used and also provides additional debugging and diagnostic tools that are not available in the integrated version.

Project Files

For the tests that are available, Project Group files for each supported Delphi IDE version are located in the +tests folder. Tests are organised by library with individual project files for each supported IDE in a projects sub-folder:

+\tests
       TestProjects.D7.bpg
       TestProjects.D2010.groupproj
       etc..
      \rtl
          Test.Strings
          Test.Strings.UTF8
          etc...
         \projects
                  rtl.d7.dpr
                  rtl.d2010.dpr
                  etc...

Environment Variables

Test projects reference the following environment variables:

$(bpl)       - folder for BPL and DCP files (output)
$(bin)       - folder for EXE files (output)
$(dcu)       - folder for DCU output
$(deltics)   - identifies the "root" folder containing delphi.libs

$(deltics)

The deltics environment variable is discussed in the Installation and Getting Started page.

$(bin) and $(bpl)

These are output file locations and should be set to suitable locations in your development environment. If you use packages directly from their output location then the $(bpl) location must be on your system PATH.

$(dcu)

This variable identifies the location where dcu files will be output during compilation.

If you use multiple versions of Delphi it is recommended that the dcu variable be configured separately in each IDE to a location specific to that IDE version, e.g.:

Version          $(DCU)
-----------------------------------
Delphi 7         c:\dev\dcu\d7
Delphi 2010      c:\dev\dcu\d2010
Delphi XE5       c:\dev\dcu\xe5

For IDE versions supporting configuration sets and multiple platforms, project options have their exe and dcu output folders to platform and configuration specific locations (where appropriate) as follows:

Version          Debug Builds         Release Builds
-------------------------------------------------------------
Delphi 7-2007    $(bin)\Win32
                 $(dcu)

Delphi 2009-XE   $(bin)\Win32Debug    $(bin)\Win32Release
                 $(dcu)\debug         $(bin)\release

Delphi XE2-      $(bin)\Win32Debug    $(bin)\Win32Release
                 $(bin)\Win64Debug    $(bin)\Win64Release
                 $(dcu)\Win32Debug    $(dcu)\Win32Release
                 $(dcu)\Win64Debug    $(dcu)\Win64Release
Clone this wiki locally