plugins/testsuite/stacktest.sp
author David Anderson <dvander@alliedmods.net>
Sun Apr 13 06:06:27 2008 +0000 (2008-04-13)
changeset 1999 63aafc6ff212
permissions -rw-r--r--
added amb1538 - adt_stack
dvander@1999
     1
#include <sourcemod>
dvander@1999
     2
dvander@1999
     3
public Plugin:myinfo = 
dvander@1999
     4
{
dvander@1999
     5
	name = "Stack Tests",
dvander@1999
     6
	author = "AlliedModders LLC",
dvander@1999
     7
	description = "Tests stack functions",
dvander@1999
     8
	version = "1.0.0.0",
dvander@1999
     9
	url = "http://www.sourcemod.net/"
dvander@1999
    10
};
dvander@1999
    11
dvander@1999
    12
public OnPluginStart()
dvander@1999
    13
{
dvander@1999
    14
	RegServerCmd("test_stack", Test_Stack);
dvander@1999
    15
}
dvander@1999
    16
dvander@1999
    17
public Action:Test_Stack(args)
dvander@1999
    18
{
dvander@1999
    19
	new Handle:stack;
dvander@1999
    20
	new test[20]
dvander@1999
    21
	decl String:buffer[42];
dvander@1999
    22
	
dvander@1999
    23
	test[0] = 5
dvander@1999
    24
	test[1] = 7
dvander@1999
    25
	
dvander@1999
    26
	stack = CreateStack(30);
dvander@1999
    27
	PushStackCell(stack, 50);
dvander@1999
    28
	PushStackArray(stack, test, 2);
dvander@1999
    29
	PushStackArray(stack, test, 2);
dvander@1999
    30
	PushStackString(stack, "space craaab");
dvander@1999
    31
	PushStackCell(stack, 12);
dvander@1999
    32
	
dvander@1999
    33
	PrintToServer("empty? %d", IsStackEmpty(stack));
dvander@1999
    34
	
dvander@1999
    35
	PopStack(stack);
dvander@1999
    36
	PopStackString(stack, buffer, sizeof(buffer));
dvander@1999
    37
	PrintToServer("popped: \"%s\"", buffer);
dvander@1999
    38
	test[0] = 0
dvander@1999
    39
	test[1] = 0
dvander@1999
    40
	PrintToServer("values: %d, %d", test[0], test[1]);
dvander@1999
    41
	PopStackArray(stack, test, 2);
dvander@1999
    42
	PrintToServer("popped: %d, %d", test[0], test[1]);
dvander@1999
    43
	PopStackCell(stack, test[0], 1);
dvander@1999
    44
	PrintToServer("popped: x, %d", test[0]);
dvander@1999
    45
	PopStackCell(stack, test[0]);
dvander@1999
    46
	PrintToServer("popped: %d", test[0]);
dvander@1999
    47
	
dvander@1999
    48
	PrintToServer("empty? %d", IsStackEmpty(stack));
dvander@1999
    49
	
dvander@1999
    50
	CloseHandle(stack);
dvander@1999
    51
	
dvander@1999
    52
	return Plugin_Handled;
dvander@1999
    53
}