LCOV - app.info - js/src/jsapi-tests/testContexts.cpp

LCOV - code coverage report
| Current view: | directory - js/src/jsapi-tests - testContexts.cpp (source / functions) |  | Found | Hit | Coverage |
| Test: | app.info | Lines: | 29 | 26 | 89.7 %
| Date: | 2012-04-07 | Functions: | 14 | 11 | 78.6 %

           1                 : /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
           2                 :  * vim: set ts=8 sw=4 et tw=99:
           3                 :  */
           4                 :
           5                 : #include "tests.h"
           6                 :
           7               4 : BEGIN_TEST(testContexts_IsRunning)
           8                 :     {
           9               1 :         CHECK(JS_DefineFunction(cx, global, "chk", chk, 0, 0));
          10               1 :         EXEC("for (var i = 0; i < 9; i++) chk();");
          11               1 :         return true;
          12                 :     }
          13                 :
          14               9 :     static JSBool chk(JSContext *cx, unsigned argc, jsval *vp)
          15                 :     {
          16               9 :         JSRuntime *rt = JS_GetRuntime(cx);
          17               9 :         JSContext *acx = JS_NewContext(rt, 8192);
          18               9 :         if (!acx) {
          19               0 :             JS_ReportOutOfMemory(cx);
          20               0 :             return JS_FALSE;
          21                 :         }
          22                 :
          23                 :         // acx should not be running
          24               9 :         bool ok = !JS_IsRunning(acx);
          25               9 :         if (!ok)
          26               0 :             JS_ReportError(cx, "Assertion failed: brand new context claims to be running");
          27               9 :         JS_DestroyContext(acx);
          28               9 :         return ok;
          29                 :     }
          30               1 : END_TEST(testContexts_IsRunning)
          31                 :
          32               4 : BEGIN_TEST(testContexts_bug563735)
          33                 : {
          34               1 :     JSContext *cx2 = JS_NewContext(rt, 8192);
          35               1 :     CHECK(cx2);
          36                 :
          37                 :     JSBool ok;
          38                 :     {
          39               2 :         JSAutoRequest req(cx2);
          40               2 :         JSAutoEnterCompartment ac;
          41               1 :         CHECK(ac.enter(cx2, global));
          42               1 :         jsval v = JSVAL_NULL;
          43               2 :         ok = JS_SetProperty(cx2, global, "x", &v);
          44                 :     }
          45               1 :     CHECK(ok);
          46                 :
          47               1 :     EXEC("(function () { for (var i = 0; i < 9; i++) ; })();");
          48                 :
          49               1 :     JS_DestroyContext(cx2);
          50               1 :     return true;
          51                 : }
          52               3 : END_TEST(testContexts_bug563735)

Generated by: LCOV version 1.7