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 ); }
int main(int argc, char* argv[]) { TestDatatypeSizes(); TestMasks(); TestString(); TestStack(); TestQueue(); TestList(); TestDictionary(); return 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; }
wxLuaCheckStack::~wxLuaCheckStack() { if (m_print_to_console) TestStack(wxT("~wxLuaCheckStack")); }
//! 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(); }