b17b17a71d
Update unit tests with hashcode instead of overridden xcode.newid implementation
112 lines
2.7 KiB
Lua
112 lines
2.7 KiB
Lua
---
|
|
-- tests/actions/xcode/test_xcode4_project.lua
|
|
-- Automated test suite for Xcode project generation.
|
|
-- Copyright (c) 2011-2015 Jason Perkins and the Premake project
|
|
---
|
|
|
|
|
|
local suite = test.declare("xcode4_proj")
|
|
local p = premake
|
|
local xcode = p.modules.xcode
|
|
|
|
|
|
---------------------------------------------------------------------------
|
|
-- Setup/Teardown
|
|
---------------------------------------------------------------------------
|
|
|
|
local tr, wks
|
|
|
|
function suite.teardown()
|
|
tr = nil
|
|
end
|
|
|
|
function suite.setup()
|
|
_TARGET_OS = "macosx"
|
|
p.action.set('xcode4')
|
|
io.eol = "\n"
|
|
wks = test.createWorkspace()
|
|
end
|
|
|
|
local function prepare()
|
|
wks = p.oven.bakeWorkspace(wks)
|
|
xcode.prepareWorkspace(wks)
|
|
local prj = p.workspace.getproject(wks, 1)
|
|
tr = xcode.buildprjtree(prj)
|
|
end
|
|
|
|
---------------------------------------------------------------------------
|
|
-- xcode id generation tests
|
|
---------------------------------------------------------------------------
|
|
|
|
local function print_id(...)
|
|
_p("%s", xcode.newid(...))
|
|
end
|
|
|
|
function suite.IDGeneratorIsDeterministic()
|
|
print_id("project", "Debug")
|
|
print_id("project", "Release")
|
|
test.capture [[
|
|
B266956655B21E987082EBA6
|
|
DAC961207F1BFED291544760
|
|
]]
|
|
end
|
|
|
|
function suite.IDGeneratorIsDifferent()
|
|
print_id("project", "Debug", "file")
|
|
print_id("project", "Debug", "hello")
|
|
test.capture [[
|
|
47C6E72E5ED982604EF57D6E
|
|
8DCA12C2873014347ACB7102
|
|
]]
|
|
end
|
|
|
|
function suite.IDGeneratorSame3()
|
|
print_id("project", "Release", "file")
|
|
print_id("project", "Release", "file")
|
|
print_id("project", "Release", "file")
|
|
test.capture [[
|
|
022ECCE82854FC9A8F5BF328
|
|
022ECCE82854FC9A8F5BF328
|
|
022ECCE82854FC9A8F5BF328
|
|
]]
|
|
end
|
|
|
|
function suite.IDGeneratorMoreThanNecessary()
|
|
print_id("a", "b", "c", "d", "e", "f")
|
|
print_id("abcdef")
|
|
test.capture [[
|
|
63AEF3DD89D5238FF0DC1A1D
|
|
9F1AF6957CC5F947506A7CD5
|
|
]]
|
|
end
|
|
|
|
---------------------------------------------------------------------------
|
|
-- XCBuildConfiguration_Project tests
|
|
---------------------------------------------------------------------------
|
|
|
|
function suite.XCBuildConfigurationProject_OnSymbols()
|
|
symbols "On"
|
|
prepare()
|
|
xcode.XCBuildConfiguration_Project(tr, tr.configs[1])
|
|
test.capture [[
|
|
A14350AC4595EE5E57CE36EC /* Debug */ = {
|
|
isa = XCBuildConfiguration;
|
|
buildSettings = {
|
|
ARCHS = "$(NATIVE_ARCH_ACTUAL)";
|
|
CONFIGURATION_BUILD_DIR = "$(SYMROOT)";
|
|
CONFIGURATION_TEMP_DIR = "$(OBJROOT)";
|
|
COPY_PHASE_STRIP = NO;
|
|
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
|
GCC_OPTIMIZATION_LEVEL = 0;
|
|
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
|
OBJROOT = obj/Debug;
|
|
ONLY_ACTIVE_ARCH = YES;
|
|
SYMROOT = bin/Debug;
|
|
};
|
|
name = Debug;
|
|
};
|
|
]]
|
|
end
|