VirtualBox

Changeset 46334 in vbox


Ignore:
Timestamp:
May 30, 2013 5:31:28 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
86107
Message:

VMMDevTesting: Close the testing instance on VMMDEV_TESTING_CMD_TERM.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/VMMDev/VMMDevTesting.cpp

    r46300 r46334  
    237237                                case VMMDEV_TESTING_CMD_INIT:
    238238                                    VMMDEV_TESTING_OUTPUT(("testing: INIT '%s'\n", pThis->TestingData.String.sz));
    239                                     RTTestChangeName(pThis->hTestingTest, pThis->TestingData.String.sz);
    240                                     RTTestBanner(pThis->hTestingTest);
     239                                    if (pThis->hTestingTest != NIL_RTTEST)
     240                                    {
     241                                        RTTestChangeName(pThis->hTestingTest, pThis->TestingData.String.sz);
     242                                        RTTestBanner(pThis->hTestingTest);
     243                                    }
    241244                                    break;
    242245                                case VMMDEV_TESTING_CMD_SUB_NEW:
    243246                                    VMMDEV_TESTING_OUTPUT(("testing: SUB_NEW  '%s'\n", pThis->TestingData.String.sz));
    244                                     RTTestSub(pThis->hTestingTest, pThis->TestingData.String.sz);
     247                                    if (pThis->hTestingTest != NIL_RTTEST)
     248                                        RTTestSub(pThis->hTestingTest, pThis->TestingData.String.sz);
    245249                                    break;
    246250                                case VMMDEV_TESTING_CMD_FAILED:
    247                                     RTTestFailed(pThis->hTestingTest, "%s", pThis->TestingData.String.sz);
     251                                    if (pThis->hTestingTest != NIL_RTTEST)
     252                                        RTTestFailed(pThis->hTestingTest, "%s", pThis->TestingData.String.sz);
    248253                                    VMMDEV_TESTING_OUTPUT(("testing: FAILED '%s'\n", pThis->TestingData.String.sz));
    249254                                    break;
    250255                                case VMMDEV_TESTING_CMD_SKIPPED:
    251                                     if (off)
    252                                         RTTestSkipped(pThis->hTestingTest, "%s", pThis->TestingData.String.sz);
    253                                     else
    254                                         RTTestSkipped(pThis->hTestingTest, NULL);
     256                                    if (pThis->hTestingTest != NIL_RTTEST)
     257                                    {
     258                                        if (off)
     259                                            RTTestSkipped(pThis->hTestingTest, "%s", pThis->TestingData.String.sz);
     260                                        else
     261                                            RTTestSkipped(pThis->hTestingTest, NULL);
     262                                    }
    255263                                    VMMDEV_TESTING_OUTPUT(("testing: SKIPPED '%s'\n", pThis->TestingData.String.sz));
    256264                                    break;
     
    273281                        if (uCmd == VMMDEV_TESTING_CMD_TERM)
    274282                        {
    275                             while (RTTestErrorCount(pThis->hTestingTest) < u32)
    276                                 RTTestErrorInc(pThis->hTestingTest); /* A bit stupid, but does the trick. */
    277                             RTTestSubDone(pThis->hTestingTest);
     283                            if (pThis->hTestingTest != NIL_RTTEST)
     284                            {
     285                                while (RTTestErrorCount(pThis->hTestingTest) < u32)
     286                                    RTTestErrorInc(pThis->hTestingTest); /* A bit stupid, but does the trick. */
     287                                RTTestSubDone(pThis->hTestingTest);
     288                                RTTestSummaryAndDestroy(pThis->hTestingTest);
     289                                pThis->hTestingTest = NIL_RTTEST;
     290                            }
    278291                            VMMDEV_TESTING_OUTPUT(("testing: TERM - %u errors\n", u32));
    279292                        }
    280293                        else
    281294                        {
    282                             while (RTTestSubErrorCount(pThis->hTestingTest) < u32)
    283                                 RTTestErrorInc(pThis->hTestingTest); /* A bit stupid, but does the trick. */
    284                             RTTestSubDone(pThis->hTestingTest);
     295                            if (pThis->hTestingTest != NIL_RTTEST)
     296                            {
     297                                while (RTTestSubErrorCount(pThis->hTestingTest) < u32)
     298                                    RTTestErrorInc(pThis->hTestingTest); /* A bit stupid, but does the trick. */
     299                                RTTestSubDone(pThis->hTestingTest);
     300                            }
    285301                            VMMDEV_TESTING_OUTPUT(("testing: SUB_DONE - %u errors\n", u32));
    286302                        }
     
    326342                                enmUnit = RTTESTUNIT_NONE;
    327343                            }
    328                             RTTestValue(pThis->hTestingTest, pThis->TestingData.Value.szName,
    329                                         pThis->TestingData.Value.u64Value.u, enmUnit);
     344                            if (pThis->hTestingTest != NIL_RTTEST)
     345                                RTTestValue(pThis->hTestingTest, pThis->TestingData.Value.szName,
     346                                            pThis->TestingData.Value.u64Value.u, enmUnit);
    330347
    331348                            VMMDEV_TESTING_OUTPUT(("testing: VALUE '%s'%*s: %'9llu (%#llx) [%u]\n",
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette