tests/lua/staticmines.lua
branch0.9.25
changeset 14369 7f0166b01dc9
parent 14368 c2a3d15df7d3
child 14376 c3ae3cac8fba
child 14387 1465f34973b5
--- a/tests/lua/staticmines.lua	Wed Dec 05 09:50:25 2018 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,137 +0,0 @@
---[[ Static Mines Test
-
-This test tests if mines are able to stand still on the ground for a very long time. 8 mines are spawned on a few girders.
-
-The test passes if the mines don't move for a very long time.
-The test failes if any mine moves even the tiniest bit or is destroyed.
-
-This test case has been created as response to bug 96.
-]]
-
--- Max. time to test
-local TEST_TIME_LIMIT = 3600000 * 5 -- 5 hours
-
-local hhs = {}
-
-function onGameInit()
-
-	ClearGameFlags()
-	EnableGameFlags(gfDisableWind, gfOneClanMode)
-	Map = ""
-	Seed = 12
-	Theme = "Desert"
-	MapGen = mgDrawn
-	TurnTime = -1
-	Explosives = 0
-	MinesNum = 0
-	CaseFreq = 0
-	Delay = 100
-	WaterRise = 0
-	HealthDecrease = 0
-	AirMinesNum = 0
-
-
-	AddTeam("Test Team", 0xFFFF00, "Statue", "Tank", "Default", "cm_test")
-	hhs[1] = AddHog("Test Hog", 0, 100, "cm_test")
-	SetGearPosition(hhs[1], 300, 1450)
-end
-
-local mines = {
-	{ x = 231, y = 1708},
-	{ x = 290, y = 1708},
-	{ x = 342, y = 1708},
-	{ x = 261, y = 1708},
-	{ x = 319, y = 1708},
-	{ x = 403, y = 1706},
-	{ x = 428, y = 1706},
-	{ x = 461, y = 1706},
-	{ x = 498, y = 1706},
-	{ x = 518, y = 1706},
-}
-
-function LoadGearData()
-	------ GIRDER LIST ------
-	PlaceGirder(290, 1718, 4)
-	PlaceGirder(290, 1790, 4)
-	PlaceGirder(452, 1716, 4)
-	PlaceGirder(452, 1790, 4)
-	
-	PlaceGirder(300, 1500, 4)
-
-	------ MINE LIST ------
-	for m=1, #mines do
-		mines[m].gear = AddGear(mines[m].x, mines[m].y, gtMine, 0, 0, 0, 0)
-	end
-
-end
-
-function onGameStart()
-	LoadGearData()
-end
-
-function onGearDelete(gear)
-	for m=#mines, 1, -1 do
-		if gear == mines[m] then
-			WriteLnToConsole(string.format("Mine %d died!", m))
-			table.remove(mines, m)
-		end
-	end
-end
-
--- Give a short time for the mines to settle first.
-local checkTimer = -5000
-local initPosCheck = false
--- Count the total times the mines managed to stand still
-local totalTime = 0
-local fin = false
-function onGameTick20()
-	if fin then
-		return
-	end
-	-- Infinite turn time
-	if TurnTimeLeft < 6000 then
-		TurnTimeLeft = -1
-	end
-	checkTimer = checkTimer + 20
-	if initPosCheck then
-		totalTime = totalTime + 20
-	end
-	if checkTimer >= 1000 then
-		local failed = false
-		for m=1, #mines do
-			if not initPosCheck then
-				-- Position initialization
-				-- Save “real” x and y values after the mines have settled
-				local x, y = GetGearPosition(mines[m].gear)
-				mines[m].rx = x
-				mines[m].ry = y
-			else
-				-- Position check
-				local x, y = GetGearPosition(mines[m].gear)
-				local rx, ry = mines[m].rx, mines[m].ry
-				if not x or not y then
-					WriteLnToConsole(string.format("Mine %d has died!", m))
-					failed = true
-				elseif x ~= rx or y ~= ry then
-					WriteLnToConsole(string.format("Mine %d has moved! Expected: (%d, %d). Actual: (%d, %d)", m, rx, ry, x, y))
-					failed = true
-				end
-			end
-		end
-		if not initPosCheck then
-			initPosCheck = true
-		end
-		if failed then
-			WriteLnToConsole(string.format("Test failed. The mines managed to stand still for %d ticks.", totalTime))
-			EndLuaTest(TEST_FAILED)
-			fin = true
-			return
-		end
-	end
-	if totalTime >= TEST_TIME_LIMIT then
-		WriteLnToConsole(string.format("All mines have been static for over %d ticks! Success!", TEST_TIME_LIMIT))
-		EndLuaTest(TEST_SUCCESSFUL)
-		fin = true
-		return
-	end
-end
\ No newline at end of file