--
-- tests/actions/vstudio/cs2005/projectsettings.lua
-- Validate generation of root in Visual Studio 2005+ .csproj
-- Copyright (c) 2009-2012 Jason Perkins and the Premake project
--
T.vstudio_cs2005_projectsettings = { }
local suite = T.vstudio_cs2005_projectsettings
local cs2005 = premake.vstudio.cs2005
--
-- Setup
--
local sln, prj
function suite.setup()
_ACTION = "vs2005"
sln = test.createsolution()
language "C#"
uuid "AE61726D-187C-E440-BD07-2556188A6565"
end
local function prepare()
prj = premake.solution.getproject(sln, 1)
cs2005.projectProperties(prj)
end
--
-- Version Tests
--
function suite.OnVs2005()
prepare()
test.capture [[
Debug
AnyCPU
8.0.50727
2.0
{AE61726D-187C-E440-BD07-2556188A6565}
Exe
Properties
MyProject
MyProject
]]
end
function suite.OnVs2008()
_ACTION = "vs2008"
prepare()
test.capture [[
Debug
AnyCPU
9.0.30729
2.0
{AE61726D-187C-E440-BD07-2556188A6565}
Exe
Properties
MyProject
MyProject
]]
end
function suite.OnVs2010()
_ACTION = "vs2010"
prepare()
test.capture [[
Debug
AnyCPU
8.0.30703
2.0
{AE61726D-187C-E440-BD07-2556188A6565}
Exe
Properties
MyProject
MyProject
v4.0
512
]]
end
--
-- Framework Tests
--
function suite.OnFrameworkVersion()
framework "3.0"
prepare()
test.capture [[
Debug
AnyCPU
8.0.50727
2.0
{AE61726D-187C-E440-BD07-2556188A6565}
Exe
Properties
MyProject
MyProject
v3.0
]]
end
--
-- Make sure the root namespace can be overridden.
--
function suite.canOverrideRootNamespace()
namespace "MyCompany.%{prj.name}"
prepare()
test.capture [[
Debug
AnyCPU
8.0.50727
2.0
{AE61726D-187C-E440-BD07-2556188A6565}
Exe
Properties
MyCompany.MyProject
MyProject
]]
end
--
-- WPF adds an additional element.
--
function suite.projectTypeGuids_onWPF()
_ACTION = "vs2010"
flags { "WPF" }
prepare()
test.capture [[
Debug
AnyCPU
8.0.30703
2.0
{AE61726D-187C-E440-BD07-2556188A6565}
Exe
Properties
MyProject
MyProject
v4.0
512
{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
]]
end