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