LCOV - code coverage report
Current view: top level - src/extensions - trigger-failure-extension.cc (source / functions) Hit Total Coverage
Test: app.info Lines: 9 13 69.2 %
Date: 2019-04-19 Functions: 2 4 50.0 %

          Line data    Source code
       1             : // Copyright 2013 the V8 project authors. All rights reserved.
       2             : // Use of this source code is governed by a BSD-style license that can be
       3             : // found in the LICENSE file.
       4             : 
       5             : #include "src/extensions/trigger-failure-extension.h"
       6             : 
       7             : #include "src/base/logging.h"
       8             : #include "src/checks.h"
       9             : 
      10             : namespace v8 {
      11             : namespace internal {
      12             : 
      13             : 
      14             : const char* const TriggerFailureExtension::kSource =
      15             :     "native function triggerCheckFalse();"
      16             :     "native function triggerAssertFalse();"
      17             :     "native function triggerSlowAssertFalse();";
      18             : 
      19             : 
      20             : v8::Local<v8::FunctionTemplate>
      21           3 : TriggerFailureExtension::GetNativeFunctionTemplate(v8::Isolate* isolate,
      22             :                                                    v8::Local<v8::String> str) {
      23           3 :   if (strcmp(*v8::String::Utf8Value(isolate, str), "triggerCheckFalse") == 0) {
      24             :     return v8::FunctionTemplate::New(
      25             :         isolate,
      26           1 :         TriggerFailureExtension::TriggerCheckFalse);
      27           2 :   } else if (strcmp(*v8::String::Utf8Value(isolate, str),
      28             :                     "triggerAssertFalse") == 0) {
      29             :     return v8::FunctionTemplate::New(
      30             :         isolate,
      31           1 :         TriggerFailureExtension::TriggerAssertFalse);
      32             :   } else {
      33           1 :     CHECK_EQ(0, strcmp(*v8::String::Utf8Value(isolate, str),
      34             :                        "triggerSlowAssertFalse"));
      35             :     return v8::FunctionTemplate::New(
      36             :         isolate,
      37           1 :         TriggerFailureExtension::TriggerSlowAssertFalse);
      38             :   }
      39             : }
      40             : 
      41             : 
      42           0 : void TriggerFailureExtension::TriggerCheckFalse(
      43             :     const v8::FunctionCallbackInfo<v8::Value>& args) {
      44           0 :   CHECK(false);
      45             : }
      46             : 
      47             : 
      48           1 : void TriggerFailureExtension::TriggerAssertFalse(
      49             :     const v8::FunctionCallbackInfo<v8::Value>& args) {
      50             :   DCHECK(false);
      51           1 : }
      52             : 
      53             : 
      54           0 : void TriggerFailureExtension::TriggerSlowAssertFalse(
      55             :     const v8::FunctionCallbackInfo<v8::Value>& args) {
      56             :   SLOW_DCHECK(false);
      57           0 : }
      58             : 
      59             : }  // namespace internal
      60             : }  // namespace v8

Generated by: LCOV version 1.10