diff --git a/main/lib/test/gb.test/.src/TestMe.module b/main/lib/test/gb.test/.src/TestMe.module index 3a738404c..a22f79199 100644 --- a/main/lib/test/gb.test/.src/TestMe.module +++ b/main/lib/test/gb.test/.src/TestMe.module @@ -19,7 +19,9 @@ Public Sub Main() ' ------------------------------------------------- These must succeed Tests = asGood.Join(",") - Test.Main(Tests) + 'Test.Main(Tests) + + 'Print Test.AllTests() ' ------------------------------------------------- This must not succeed 'Tests = "TestCrashes" @@ -37,7 +39,7 @@ Public Sub Main() 'Debug TestCommand.ToString(TestRunner.List("~/programming/gambas/gambas/comp/src/gb.test")) 'Tests = "TestInternals.InterpreterInterface" - 'Test.Main(Tests) + Test.Main(Tests) ' ------------------------------------------------- Interpreter Interface ' Dim testclass As Class diff --git a/main/lib/test/gb.test/.src/TestSuite/Test.module b/main/lib/test/gb.test/.src/TestSuite/Test.module index f5dc97433..a35c97086 100644 --- a/main/lib/test/gb.test/.src/TestSuite/Test.module +++ b/main/lib/test/gb.test/.src/TestSuite/Test.module @@ -176,8 +176,7 @@ Private Function RunTests() If Not $Suite Then ' create as Suite with all tests $Suite = New TestSuite - For Each sTestModule In GetAllTestModules() - TestModule = __Test.Load(sTestModule) + For Each TestModule In GetAllTestModules() $Suite.AddAllTestCases(TestModule) Next Endif @@ -187,10 +186,10 @@ Private Function RunTests() End -Private Function GetAllTestModules() As String[] +Private Function GetAllTestModules() As Class[] Dim TestClass As Class - Dim TestModuleNames As New String[] + Dim TestModules As New Class[] Dim sNames As New String[] Dim sName As String Dim hStat As ClassStat @@ -209,12 +208,10 @@ Private Function GetAllTestModules() As String[] For Each sName In sNames TestClass = __Test.Load(sName) If Not TestClass Then Error.Raise(Subst$(("Could not load test module '&1'"), sName)) - If TestModuleNames.Exist(sName) Then Continue - TestModuleNames.Add(sName) + TestModules.Add(TestClass) Next - TestModuleNames.Sort - Return TestModuleNames + Return TestModules Catch Test.BailOut("Error in " & Error.Where & ": " & Error.Text) @@ -226,16 +223,16 @@ End Public Function AllTestsCollection() As Collection - Dim sModules As String[] + Dim aoTestModules As Class[] Dim sModule As String Dim TestModule As Class Dim cAlltests As New Collection + Dim oTestModule As Class - sModules = GetAllTestModules() + aoTestModules = GetAllTestModules() - For Each sModule In sModules - TestModule = __Test.Load(sModule) - cAlltests.Add(TestSuite.GetTestsFromTestModule(Testmodule), TestModule.Name) + For Each oTestModule In aoTestModules + cAlltests.Add(TestSuite.GetTestsFromTestModule(oTestModule), oTestModule.Name) Next Return cAlltests @@ -371,6 +368,8 @@ Private Sub PrintAllTests() Print aTest.Join(); End + +'Fill suite from String Private Sub FromString(Tests As String) Dim Commands As TestCommand[]