-- -- tests/actions/vstudio/cs2005/test_debug_props.lua -- Test debugging and optimization flags block of a Visual Studio 2005+ C# project. -- Copyright (c) 2012-2013 Jason Perkins and the Premake project -- local p = premake local suite = test.declare("vstudio_cs2005_debug_props") local cs2005 = p.vstudio.cs2005 local dn2005 = p.vstudio.dotnetbase local project = p.project -- -- Setup and teardown -- local wks, prj function suite.setup() p.action.set("vs2005") wks, prj = test.createWorkspace() end local function prepare() local cfg = test.getconfig(prj, "Debug") dn2005.debugProps(cfg) end -- -- Check the handling of the Symbols flag. -- function suite.debugSymbols_onNoSymbolsFlag() prepare() test.capture [[ pdbonly false ]] end function suite.debugSymbols_onSymbolsFlag() symbols "On" prepare() test.capture [[ true full false ]] end --- --- Check handling of debug parameters. --- function suite.debugCommandParameters() debugargs "foobar" local cfg = test.getconfig(prj, "Debug") dn2005.debugCommandParameters(cfg) test.capture [[ foobar ]] end function suite.debugStartArguments() debugargs "foobar" local cfg = test.getconfig(prj, "Debug") cs2005.localDebuggerCommandArguments(cfg) test.capture [[ foobar ]] 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