Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/premake-4.x-stable.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJason Perkins <starkos@industriousone.com>2013-04-26 00:00:18 +0400
committerJason Perkins <starkos@industriousone.com>2013-04-26 00:00:18 +0400
commite1478cbb172cfb7bcb6220d154fc6f12d5e04bc6 (patch)
treeac1391a6b995b9ecc7805a12171c6a109c5ec2f2 /tests
parent826b24e1b01d969ba7206b7e1b38176bf639649a (diff)
Add support for Visual Studio 2012 (Oliver Schneider)
Diffstat (limited to 'tests')
-rwxr-xr-xtests/actions/vstudio/cs2005/projectelement.lua15
-rwxr-xr-xtests/actions/vstudio/cs2005/projectsettings.lua29
-rwxr-xr-xtests/actions/vstudio/sln2005/header.lua16
-rw-r--r--tests/actions/vstudio/vc2010/test_config_props.lua65
-rw-r--r--tests/premake4.lua1
5 files changed, 115 insertions, 11 deletions
diff --git a/tests/actions/vstudio/cs2005/projectelement.lua b/tests/actions/vstudio/cs2005/projectelement.lua
index fda6061..1d2a61f 100755
--- a/tests/actions/vstudio/cs2005/projectelement.lua
+++ b/tests/actions/vstudio/cs2005/projectelement.lua
@@ -10,15 +10,15 @@
--
--- Setup
+-- Setup
--
local sln, prj
-
+
function suite.setup()
sln = test.createsolution()
end
-
+
local function prepare()
premake.bake.buildconfigs()
prj = premake.solution.getproject(sln, 1)
@@ -54,3 +54,12 @@
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
]]
end
+
+ function suite.On2012()
+ _ACTION = "vs2012"
+ prepare()
+ test.capture [[
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ ]]
+ end
diff --git a/tests/actions/vstudio/cs2005/projectsettings.lua b/tests/actions/vstudio/cs2005/projectsettings.lua
index 2e2e242..f30559f 100755
--- a/tests/actions/vstudio/cs2005/projectsettings.lua
+++ b/tests/actions/vstudio/cs2005/projectsettings.lua
@@ -10,17 +10,17 @@
--
--- Setup
+-- Setup
--
local sln, prj
-
+
function suite.setup()
sln = test.createsolution()
language "C#"
- uuid "AE61726D-187C-E440-BD07-2556188A6565"
+ uuid "AE61726D-187C-E440-BD07-2556188A6565"
end
-
+
local function prepare()
premake.bake.buildconfigs()
prj = premake.solution.getproject(sln, 1)
@@ -85,7 +85,26 @@
<RootNamespace>MyProject</RootNamespace>
<AssemblyName>MyProject</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
- <TargetFrameworkProfile>Client</TargetFrameworkProfile>
+ <TargetFrameworkProfile></TargetFrameworkProfile>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ ]]
+ end
+
+
+ function suite.OnVs2012()
+ _ACTION = "vs2012"
+ prepare()
+ test.capture [[
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProjectGuid>{AE61726D-187C-E440-BD07-2556188A6565}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>MyProject</RootNamespace>
+ <AssemblyName>MyProject</AssemblyName>
+ <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
]]
diff --git a/tests/actions/vstudio/sln2005/header.lua b/tests/actions/vstudio/sln2005/header.lua
index 727bb4a..5eb02e3 100755
--- a/tests/actions/vstudio/sln2005/header.lua
+++ b/tests/actions/vstudio/sln2005/header.lua
@@ -10,15 +10,15 @@
--
--- Setup
+-- Setup
--
local sln, prj
-
+
function suite.setup()
sln = test.createsolution()
end
-
+
local function prepare()
premake.bake.buildconfigs()
sln2005.header()
@@ -57,3 +57,13 @@ Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
]]
end
+
+
+ function suite.On2012()
+ _ACTION = "vs2012"
+ prepare()
+ test.capture [[
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2012
+ ]]
+ end
diff --git a/tests/actions/vstudio/vc2010/test_config_props.lua b/tests/actions/vstudio/vc2010/test_config_props.lua
new file mode 100644
index 0000000..3aef357
--- /dev/null
+++ b/tests/actions/vstudio/vc2010/test_config_props.lua
@@ -0,0 +1,65 @@
+--
+-- tests/actions/vstudio/vc2010/test_config_props.lua
+-- Validate generation of the configuration property group.
+-- Copyright (c) 2011-2013 Jason Perkins and the Premake project
+--
+
+ T.vstudio_vs2010_config_props = { }
+ local suite = T.vstudio_vs2010_config_props
+ local vc2010 = premake.vstudio.vc2010
+ local project = premake.project
+
+
+--
+-- Setup
+--
+
+ local sln, prj
+
+ function suite.setup()
+ sln, prj = test.createsolution()
+ end
+
+ local function prepare(platform)
+ premake.bake.buildconfigs()
+ sln.vstudio_configs = premake.vstudio.buildconfigs(sln)
+ local cfginfo = sln.vstudio_configs[1]
+ local cfg = premake.getconfig(prj, cfginfo.src_buildcfg, cfginfo.src_platform)
+ vc2010.configurationPropertyGroup(cfg, cfginfo)
+ end
+
+
+--
+-- Check the structure with the default project values.
+--
+
+ function suite.structureIsCorrect_onDefaultValues()
+ prepare()
+ test.capture [[
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ ]]
+ end
+
+
+
+
+--
+-- Visual Studio 2012 adds a platform toolset.
+--
+
+ function suite.structureIsCorrect_onDefaultValues()
+ _ACTION = "vs2012"
+ prepare()
+ test.capture [[
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>MultiByte</CharacterSet>
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ ]]
+ end
diff --git a/tests/premake4.lua b/tests/premake4.lua
index 2f64d7f..b0ebde9 100644
--- a/tests/premake4.lua
+++ b/tests/premake4.lua
@@ -103,6 +103,7 @@
dofile("actions/vstudio/vc200x/test_mfc.lua")
-- Visual Studio 2010 C/C++ projects
+ dofile("actions/vstudio/vc2010/test_config_props.lua")
dofile("actions/vstudio/vc2010/test_debugdir.lua")
dofile("actions/vstudio/vc2010/test_header.lua")
dofile("actions/vstudio/vc2010/test_files.lua")