premake/tests/tools/test_dotnet.lua

58 lines
1019 B
Lua

--
-- tests/tools/test_dotnet.lua
-- Automated test suite for the .NET toolset interface.
-- Copyright (c) 2012-2013 Jason Perkins and the Premake project
--
local p = premake
local suite = test.declare("tools_dotnet")
local dotnet = p.tools.dotnet
--
-- Setup/teardown
--
local wks, prj, cfg
function suite.setup()
wks, prj = test.createWorkspace()
end
local function prepare()
cfg = test.getconfig(prj, "Debug")
end
--
-- On Windows, use Microsoft's CSC compiler by default.
--
function suite.defaultCompiler_onWindows()
_TARGET_OS = "windows"
prepare()
test.isequal("csc", dotnet.gettoolname(cfg, "csc"))
end
--
-- Everywhere other than Windows, use Mono by default.
--
function suite.defaultCompiler_onMacOSX()
_TARGET_OS = "macosx"
prepare()
test.isequal("csc", dotnet.gettoolname(cfg, "csc"))
end
--
-- Check support for the `csversion` API
--
function suite.flags_csversion()
prepare()
csversion "7.2"
test.contains({ "/langversion:7.2" }, dotnet.getflags(cfg))
end