示例#1
0
int main(){
    Pop(A, &atop);
    Push(A, &atop, 5);
    Push(A, &atop, 4);
    Push(A, &atop, 1);
    Pop(A, &atop);
    Push(A, &atop, 3);
    Push(A, &atop, 2);
    Push(A, &atop, 1);
    if(TestStack(A,atop,5)) printf("The stack is sorted!\n");
    Move(1);
    Move(4);
    Move(5);
    if(TestStack(A,atop,5)) printf("The stack is sorted!\n");
    return 0;
}
void TestWithContainers( const Allocator& a )
{
    TestVector( a );
    TestDeque( a );
    TestList( a );
    TestSet( a );
    TestMultiset( a );
    TestMap( a );
    TestMultimap( a );
    TestString( a );
    TestStack( a );
    TestQueue( a );
    TestPriorityQueue( a );
}
示例#3
0
int main(int argc, char* argv[])
{
	TestDatatypeSizes();

	TestMasks();
	
	TestString();

	TestStack();

	TestQueue();

	TestList();

	TestDictionary();
	
 	return 0;
}
示例#4
0
int main(int argc, char **argv)
{
	DetectMemoryLeaks();

	printf("AngelScript version: %s\n", asGetLibraryVersion());
	printf("AngelScript options: %s\n", asGetLibraryOptions());

#ifdef __dreamcast__
	fs_chdir(asTestDir);
#endif

	InstallMemoryManager();

	if( TestScriptRetRef::Test()       ) goto failed; else printf("-- TestScriptRetRef passed\n");
	if( TestGarbageCollect::Test()     ) goto failed; else printf("-- TestGarbageCollect passed\n");
	if( TestFunctionPtr::Test()        ) goto failed; else printf("-- TestFunctionPtr passed\n");
	if( TestModule::Test()             ) goto failed; else printf("-- TestModule passed\n");
	if( TestGetSet::Test()             ) goto failed; else printf("-- TestGetSet passed\n");
	if( Test_Addon_ScriptArray::Test() ) goto failed; else printf("-- Test_Addon_ScriptArray passed\n");
	if( TestOperator::Test()           ) goto failed; else printf("-- TestOperator passed\n");
	if( TestTemplate::Test()           ) goto failed; else printf("-- TestTemplate passed\n");
	if( TestDump::Test()               ) goto failed; else printf("-- TestDump passed\n");
	if( TestInheritance::Test()        ) goto failed; else printf("-- TestInheritance passed\n");
	if( TestScriptClassMethod::Test()  ) goto failed; else printf("-- TestScriptClassMethod passed\n");
	if( TestScriptString::Test()       ) goto failed; else printf("-- TestScriptString passed\n");
	if( TestSaveLoad::Test()           ) goto failed; else printf("-- TestSaveLoad passed\n");
	if( TestInterface::Test()          ) goto failed; else printf("-- TestInterface passed\n");
	if( TestCastOp::Test()             ) goto failed; else printf("-- TestCastOp passed\n");
	if( Test2Modules()                 ) goto failed; else printf("-- Test2Modules passed\n");
	if( TestFile::Test()               ) goto failed; else printf("-- TestFile passed\n");
	if( TestArrayObject::Test()        ) goto failed; else printf("-- TestArrayObject passed\n");
	if( TestCompiler::Test()           ) goto failed; else printf("-- TestCompiler passed\n");
	if( TestOptimize()                 ) goto failed; else printf("-- TestOptimize passed\n");
	if( TestConversion::Test()         ) goto failed; else printf("-- TestConversion passed\n");
	if( TestRegisterType::Test()       ) goto failed; else printf("-- TestRegisterType passed\n");
	if( TestRefArgument::Test()        ) goto failed; else printf("-- TestRefArgument passed\n");
	if( TestStream::Test()             ) goto failed; else printf("-- TestStream passed\n");
	if( TestEnum::Test()               ) goto failed; else printf("-- TestEnum passed\n");
	if( TestDynamicConfig::Test()      ) goto failed; else printf("-- TestDynamicConfig passed\n");
	if( TestObjHandle::Test()          ) goto failed; else printf("-- TestObjHandle passed\n");
	if( TestGlobalVar()                ) goto failed; else printf("-- TestGlobalVar passed\n");
	if( TestScriptStruct::Test()       ) goto failed; else printf("-- TestScriptStruct passed\n");
	if( TestRZ::Test()                 ) goto failed; else printf("-- TestRZ passed\n");
	if( TestArray::Test()              ) goto failed; else printf("-- TestArray passed\n");
	if( TestAny::Test()                ) goto failed; else printf("-- TestAny passed\n");
	if( TestObjHandle2::Test()         ) goto failed; else printf("-- TestObjHandle2 passed\n");
	if( TestMetaData::Test()           ) goto failed; else printf("-- TestMetaData passed\n");
	if( TestDictionary::Test()         ) goto failed; else printf("-- TestDictionary passed\n");
	if( TestVector3()                  ) goto failed; else printf("-- TestVector3 passed\n");
	if( TestConstObject::Test()        ) goto failed; else printf("-- TestConstObject passed\n");
	if( TestImplicitCast::Test()       ) goto failed; else printf("-- TestImplicitCast passed\n");
	if( TestImplicitHandle::Test()     ) goto failed; else printf("-- TestImplicitHandle passed\n");
	if( TestFor::Test()                ) goto failed; else printf("-- TestFor passed\n");
	if( TestRefCast::Test()            ) goto failed; else printf("-- TestRefCast passed\n");
	if( TestStdString()                ) goto failed; else printf("-- TestStdString passed\n");
	if( TestStack2::Test()             ) goto failed; else printf("-- TestStack2 passed\n");
	if( TestStdVector::Test()          ) goto failed; else printf("-- TestStdVector passed\n");
	if( TestArrayHandle::Test()        ) goto failed; else printf("-- TestArrayHandle passed\n");
	if( TestDict::Test()               ) goto failed; else printf("-- TestDict passed\n");
	if( TestMultiAssign::Test()        ) goto failed; else printf("-- TestMultiAssign passed\n");
	if( TestException()                ) goto failed; else printf("-- TestException passed\n");
	if( TestInt8::Test()               ) goto failed; else printf("-- TestInt8 passed\n");
	if( TestGeneric::Test()            ) goto failed; else printf("-- TestGeneric passed\n");
	if( TestBStr()                     ) goto failed; else printf("-- TestBStr passed\n");
	if( TestTypedef::Test()            ) goto failed; else printf("-- TestTypedef passed\n");
	if( TestImport::Test()             ) goto failed; else printf("-- TestImport passed\n");
	if( TestAssign::Test()             ) goto failed; else printf("-- TestAssign passed\n");
	if( TestSwitch()                   ) goto failed; else printf("-- TestSwitch passed\n");
	if( TestExceptionMemory::Test()    ) goto failed; else printf("-- TestExceptionMemory passed\n");
	if( TestObject::Test()             ) goto failed; else printf("-- TestObject passed\n");
	if( TestFactory::Test()            ) goto failed; else printf("-- TestFactory passed\n");
	if( TestFuncOverload()             ) goto failed; else printf("-- TestFuncOverload passed\n");
	if( TestObjZeroSize::Test()        ) goto failed; else printf("-- TestObjZeroSize passed\n");
	if( TestSingleton::Test()          ) goto failed; else printf("-- TestSingleton passed\n");
	if( TestCondition()                ) goto failed; else printf("-- TestCondition passed\n");
	if( TestObject2::Test()            ) goto failed; else printf("-- TestObject2 passed\n");
	if( TestShark::Test()              ) goto failed; else printf("-- TestShark passed\n");
	if( TestBool::Test()               ) goto failed; else printf("-- TestBool passed\n");
	if( TestBits::Test()               ) goto failed; else printf("-- TestBits passed\n");
	if( TestDestructor::Test()         ) goto failed; else printf("-- TestDestructor passed\n");
	if( TestConstructor2::Test()       ) goto failed; else printf("-- TestConstructor2 passed\n");
	if( TestUnsafeRef::Test()          ) goto failed; else printf("-- TestUnsafeRef passed\n");
	if( TestVarType::Test()            ) goto failed; else printf("-- TestVarType passed\n");
	if( TestScriptMath::Test()         ) goto failed; else printf("-- TestScriptMath passed\n");
	if( TestDebug::Test()              ) goto failed; else printf("-- TestDebug passed\n");
	if( TestGetArgPtr::Test()          ) goto failed; else printf("-- TestGetArgPtr passed\n");
	if( TestAutoHandle::Test()         ) goto failed; else printf("-- TestAutoHandle passed\n");
	if( TestObject3::Test()            ) goto failed; else printf("-- TestObject3 passed\n");
	if( TestArrayIntf::Test()          ) goto failed; else printf("-- TestArrayIntf passed\n");
	if( TestConstProperty::Test()      ) goto failed; else printf("-- TestConstProperty passed\n");
	if( TestSuspend::Test()            ) goto failed; else printf("-- TestSuspend passed\n");
	if( TestVector3_2::Test()          ) goto failed; else printf("-- TestVector3_2 passed\n");
	if( TestNested()                   ) goto failed; else printf("-- TestNested passed\n");
	if( TestConstructor()              ) goto failed; else printf("-- TestConstructor passed\n");
	if( TestExecuteScript()            ) goto failed; else printf("-- TestExecuteScript passed\n");
	if( TestCustomMem::Test()          ) goto failed; else printf("-- TestCustomMem passed\n");
	if( TestPostProcess::Test()        ) goto failed; else printf("-- TestPostProcess passed\n");
	if( TestArgRef::Test()             ) goto failed; else printf("-- TestArgRef passed\n");
	if( TestNotInitialized()           ) goto failed; else printf("-- TestNotInitialized passed\n");
	if( TestConfig::Test()             ) goto failed; else printf("-- TestConfig passed\n");
	if( TestInt64()                    ) goto failed; else printf("-- TestInt64 passed\n");
	if( TestImport2::Test()            ) goto failed; else printf("-- TestImport2 passed\n");
	if( TestEnumGlobVar()              ) goto failed; else printf("-- TestEnumGlobVar passed\n");
	if( TestConfigAccess::Test()       ) goto failed; else printf("-- TestConfigAccess passed\n");
	if( TestDiscard::Test()            ) goto failed; else printf("-- TestDiscard passed\n");
	if( TestParser::Test()             ) goto failed; else printf("-- TestParser passed\n");
	if( TestFloat::Test()              ) goto failed; else printf("-- TestFloat passed\n");
	if( TestTempVar()                  ) goto failed; else printf("-- TestTempVar passed\n");
	if( TestModuleRef()                ) goto failed; else printf("-- TestModuleRef passed\n");
	if( TestExecuteString()            ) goto failed; else printf("-- TestExecuteString passed\n");
	if( TestStack()                    ) goto failed; else printf("-- TestStack passed\n");
	if( TestCreateEngine()             ) goto failed; else printf("-- TestCreateEngine passed\n");
	if( TestLongToken()                ) goto failed; else printf("-- TestLongToken passed\n");
	if( TestOutput::Test()             ) goto failed; else printf("-- TestOutput passed\n");
	if( Test2Func::Test()              ) goto failed; else printf("-- Test2Func passed\n");
	if( TestCircularImport::Test()     ) goto failed; else printf("-- TestCircularImport passed\n");
	if( TestNeverVisited()             ) goto failed; else printf("-- TestNeverVisited passed\n");

	// The following tests are designed specifically to test the native calling conventions.
	// These are grouped by calling convention and ordered in increasing complexity.
	{
		// cdecl
		if( TestExecute()                 ) goto failed; else printf("-- TestExecute passed\n");
		if( TestCDeclReturn::Test()       ) goto failed; else printf("-- TestCDeclReturn passed\n");
		if( TestExecute1Arg()             ) goto failed; else printf("-- TestExecute1Arg passed\n");
		if( TestExecute2Args()            ) goto failed; else printf("-- TestExecute2Args passed\n");
		if( TestExecute4Args()            ) goto failed; else printf("-- TestExecute4Args passed\n");
		if( TestExecute4Argsf()           ) goto failed; else printf("-- TestExecute4Argsf passed\n");
		if( TestExecuteMixedArgs()        ) goto failed; else printf("-- TestExecuteMixedArgs passed\n");
		if( TestExecute32Args()           ) goto failed; else printf("-- TestExecute32Args passed\n");
		if( TestExecute32MixedArgs()      ) goto failed; else printf("-- TestExecute32MixedArgs passed\n");
		if( TestCDecl_Class()             ) goto failed; else printf("-- TestCDecl_Class passed\n");
		if( TestCDecl_ClassA()            ) goto failed; else printf("-- TestCDecl_ClassA passed\n");
		if( TestCDecl_ClassC()            ) goto failed; else printf("-- TestCDecl_ClassC passed\n");
		if( TestCDecl_ClassD()            ) goto failed; else printf("-- TestCDecl_ClassD passed\n");

		// cdecl_objlast and cdecl_objfirst
		if( TestReturnString::Test()      ) goto failed; else printf("-- TestReturnString passed\n");
		if( TestNegateOperator()          ) goto failed; else printf("-- TestNegateOperator passed\n");
		if( TestReturnWithCDeclObjFirst() ) goto failed; else printf("-- TestReturnWithCDeclObjFirst passed\n");

		// thiscall
		if( TestExecuteThis32MixedArgs()  ) goto failed; else printf("-- TestExecuteThis32MixedArgs passed\n");
		if( TestNotComplexThisCall()      ) goto failed; else printf("-- TestNotComplexThisCall passed\n");
		if( TestVirtualMethod()           ) goto failed; else printf("-- TestVirtualMethod passed\n");
		if( TestMultipleInheritance()     ) goto failed; else printf("-- TestMultipleInheritance passed\n");
		if( TestVirtualInheritance()      ) goto failed; else printf("-- TestVirtualInheritance passed\n");

		// stdcall
		if( TestStdcall4Args()            ) goto failed; else printf("-- TestStdcall4Args passed\n");
		if( TestNotComplexStdcall()       ) goto failed; else printf("-- TestNotComplexStdcall passed\n");
	}

	// This test uses ATL::CString thus it is turned off by default
//	if( TestCString::Test()           ) goto failed; else printf("-- TestCString passed\n");
	// Pointers are not supported by AngelScript at the moment, but they may be in the future
//	if( TestPointer::Test()           ) goto failed; else printf("-- TestPointer passed\n");

	RemoveMemoryManager();

//succeed:
	printf("--------------------------------------------\n");
	printf("All of the tests passed with success.\n\n");
#if !defined(DONT_WAIT) && (defined(WIN32) || defined(_WIN64))
	printf("Press any key to quit.\n");
	while(!_getch());
#endif
	return 0;

failed:
	printf("--------------------------------------------\n");
	printf("One of the tests failed, see details above.\n\n");
#if !defined(DONT_WAIT) && (defined(WIN32) || defined(_WIN64))
	printf("Press any key to quit.\n");
	while(!_getch());
#endif
	return -1;
}
示例#5
0
wxLuaCheckStack::~wxLuaCheckStack()
{
    if (m_print_to_console)
        TestStack(wxT("~wxLuaCheckStack"));
}
示例#6
0
文件: RNGTest.C 项目: brog2610/quinoa
//! Pack/Unpack test stack. This Pack/Unpack method (re-)creates the full test
//! stack since it needs to (re-)bind function pointers on different processing
//! elements. Therefore we circumvent Charm's usual pack/unpack for this type,
//! and thus sizing does not make sense: sizing is a no-op. We could initialize
//! the stack in RNGTestDriver's constructor and let this function re-create the
//! stack only when unpacking, but that leads to repeating the same code twice:
//! once in RNGTestDriver's constructor, once here. Another option is to use
//! this pack/unpack routine to both initially create (when packing) and to
//! re-create (when unpacking) the stack, which eliminates the need for
//! pre-creating the object in RNGTestDriver's constructor and therefore
//! eliminates the repeated code. This explains the guard for sizing: the code
//! below is called for packing only (in serial) and packing and unpacking (in
//! parallel).
inline void operator|( PUP::er& p, TestStack& stack )
{ if (!p.isSizing()) stack = TestStack(); }