summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/genie/tests/base/test_config_bug.lua
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2016-11-16 20:54:15 +0100
committer Miodrag Milanovic <mmicko@gmail.com>2016-11-16 21:00:28 +0100
commitffc04d2baede0eab5768aa6a2ca5ea67cfa9ed86 (patch)
tree30ba47be0d8ad4c1ba703eb911023f18db185d3b /3rdparty/genie/tests/base/test_config_bug.lua
parentf68779cf745b20f82ff1785207657aceed41fc3e (diff)
Sync with GENie and addition of VS2017 (nw)
Diffstat (limited to '3rdparty/genie/tests/base/test_config_bug.lua')
-rw-r--r--3rdparty/genie/tests/base/test_config_bug.lua65
1 files changed, 56 insertions, 9 deletions
diff --git a/3rdparty/genie/tests/base/test_config_bug.lua b/3rdparty/genie/tests/base/test_config_bug.lua
index 9efc81fde36..c37c0f25165 100644
--- a/3rdparty/genie/tests/base/test_config_bug.lua
+++ b/3rdparty/genie/tests/base/test_config_bug.lua
@@ -1,14 +1,15 @@
T.config_bug_report = { }
local config_bug = T.config_bug_report
- local vs10_helpers = premake.vstudio.vs10_helpers
-
- local sln, prjA,prjB,prjC,prjD
+ local vs10_helpers = premake.vstudio.vs10_helpers
+
+ local sln, prjA,prjB,prjC,prjD,prjE
function config_bug.teardown()
sln = nil
prjA = nil
prjB = nil
prjC = nil
prjD = nil
+ prjE = nil
end
function config_bug.setup()
@@ -43,9 +44,14 @@
setCommonLibraryConfig()
configuration "SharedLib"
links { "A", "B" }
- prjD = project "Executable"
+ prjD = project "D"
+ files { "d.cpp" }
+ setCommonLibraryConfig()
+ configuration "SharedLib"
+ links { "A", "B", "C" }
+ prjE = project "Executable"
kind "WindowedApp"
- links { "A", "B", "C" }
+ links { "A", "B", "C", "D" }
end
@@ -73,8 +79,34 @@
defines {"defineSet"}
end
-
-
+
+
+ local kindSetOnConfiguration_and_linkSetOnBundleProjB = function (config_kind)
+ sln = solution "DontCare"
+ configurations { "DebugDLL"}
+
+ configuration "DebugDLL"
+ kind(config_kind)
+ prjA = project "A"
+ prjB = project "B"
+ configuration { config_kind }
+ links { "A" }
+ end
+
+ local sharedLibKindSetOnProject_and_linkSetOnBundleProjB = function ()
+ sln = solution "DontCare"
+ configurations { "DebugDLL" }
+ project "A"
+ prjB = project "B"
+ configuration "DebugDLL"
+ kind "Bundle"
+ configuration "Bundle"
+ links { "A" }
+ defines {"defineSet"}
+
+ end
+
+
function kind_set_on_project_config_block()
sln = solution "DontCare"
configurations { "DebugDLL" }
@@ -101,6 +133,13 @@
test.isequal("SharedLib",conf.kind)
end
+ function config_bug.kindSetOnProjectConfigBlock_projKindEqualsBundle()
+ local proj = kind_set_on_project_config_block()
+ premake.bake.buildconfigs()
+ local conf = premake.getconfig(proj,"DebugDLL","Native")
+ test.isequal("Bundle",conf.kind)
+ end
+
function config_bug.defineSetOnProjectConfigBlock_projDefineSetIsNotNil()
local proj = kind_set_on_project_config_block()
premake.bake.buildconfigs()
@@ -139,7 +178,15 @@
-- sharedLibKindSetOnConfiguration_and_linkSetOnSharedLibProjB()
kindSetOnConfiguration_and_linkSetOnSharedLibProjB("SharedLib")
premake.bake.buildconfigs()
- local config = premake.getconfig(prjB,"DebugDLL","Native")
- test.isnotnil(config.links.A)
+ local config = premake.getconfig(prjB,"DebugDLL","Native")
+ test.isnotnil(config.links.A)
+ end
+
+ function config_bug.whenKindSetOnConfiguration_prjBLinksContainsA_bundle()
+-- sharedLibKindSetOnConfiguration_and_linkSetOnBundleProjB()
+ kindSetOnConfiguration_and_linkSetOnBundleProjB("Bundle")
+ premake.bake.buildconfigs()
+ local config = premake.getconfig(prjB,"DebugDLL","Native")
+ test.isnotnil(config.links.A)
end
\ No newline at end of file