--
-- tests/actions/vstudio/cs2005/test_debug_props.lua
-- Test debugging and optimization flags block of a Visual Studio 2005+ C# project.
-- Copyright (c) 2012 Jason Perkins and the Premake project
--
T.vstudio_cs2005_debug_props = {}
local suite = T.vstudio_cs2005_debug_props
local cs2005 = premake.vstudio.cs2005
local project = premake.project
--
-- Setup and teardown
--
local sln, prj
function suite.setup()
_ACTION = "vs2005"
sln, prj = test.createsolution()
end
local function prepare()
local cfg = project.getconfig(prj, "Debug")
cs2005.debugProps(cfg)
end
--
-- Check the handling of the Symbols flag.
--
function suite.debugSymbols_onNoSymbolsFlag()
prepare()
test.capture [[
pdbonly
false
]]
end
function suite.debugSymbols_onSymbolsFlag()
flags { "Symbols" }
prepare()
test.capture [[
true
full
false
]]
end
--
-- Check handling of optimization flags.
--
function suite.optimize_onOptimizeFlag()
optimize "On"
prepare()
test.capture [[
pdbonly
true
]]
end
function suite.optimize_onOptimizeSizeFlag()
optimize "Size"
prepare()
test.capture [[
pdbonly
true
]]
end
function suite.optimize_onOptimizeSpeedFlag()
optimize "Speed"
prepare()
test.capture [[
pdbonly
true
]]
end