Explorar el Código

Added ObjectExpressionCalleeDataExtractor: added tests

sanex3339 hace 8 años
padre
commit
525f77fbb8

+ 4 - 3
dist/index.js

@@ -88,7 +88,7 @@ module.exports =
 /******/ 	__webpack_require__.p = "";
 /******/
 /******/ 	// Load entry module and return exports
-/******/ 	return __webpack_require__(__webpack_require__.s = 81);
+/******/ 	return __webpack_require__(__webpack_require__.s = 82);
 /******/ })
 /************************************************************************/
 /******/ ([
@@ -3820,7 +3820,7 @@ var ObjectExpressionCalleeDataExtractor = function () {
 
                     var isTargetPropertyNodeWithIdentifierKey = Nodes_1.Nodes.isIdentifierNode(propertyNode.key) && propertyNode.key.name === nextItemInCallsChain;
                     var isTargetPropertyNodeWithLiteralKey = Nodes_1.Nodes.isLiteralNode(propertyNode.key) && Boolean(propertyNode.key.value) && propertyNode.key.value === nextItemInCallsChain;
-                    if (!isTargetPropertyNodeWithIdentifierKey || isTargetPropertyNodeWithLiteralKey) {
+                    if (!isTargetPropertyNodeWithIdentifierKey && !isTargetPropertyNodeWithLiteralKey) {
                         continue;
                     }
                     if (Nodes_1.Nodes.isObjectExpressionNode(propertyNode.value)) {
@@ -4052,7 +4052,8 @@ module.exports = require("fs");
 module.exports = require("mkdirp");
 
 /***/ },
-/* 81 */
+/* 81 */,
+/* 82 */
 /***/ function(module, exports, __webpack_require__) {
 
 "use strict";

+ 1 - 1
src/stack-trace-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts

@@ -142,7 +142,7 @@ export class ObjectExpressionCalleeDataExtractor implements ICalleeDataExtractor
                 Boolean(propertyNode.key.value) &&
                 propertyNode.key.value === nextItemInCallsChain;
 
-            if (!isTargetPropertyNodeWithIdentifierKey || isTargetPropertyNodeWithLiteralKey) {
+            if (!isTargetPropertyNodeWithIdentifierKey && !isTargetPropertyNodeWithLiteralKey) {
                 continue;
             }
 

+ 1 - 1
test/fixtures/stack-trace-analyzer/call-expression-of-object-member.js

@@ -21,7 +21,7 @@ var object1 = {
         }
     },
 
-    bar: function () {
+    'bar': function () {
         function inner1 () {
 
         }

+ 4 - 2
test/functional-tests/stack-trace-analyzer/StackTraceAnalyzer.spec.ts

@@ -127,8 +127,10 @@ function getObjectFunctionExpressionByName (astTree: ESTree.Node, objectName: st
             if (
                 Nodes.isPropertyNode(node) &&
                 Nodes.isFunctionExpressionNode(node.value) &&
-                Nodes.isIdentifierNode(node.key) &&
-                node.key.name === name
+                (
+                    (Nodes.isIdentifierNode(node.key) && node.key.name === name) ||
+                    (Nodes.isLiteralNode(node.key) && node.key.value === name)
+                )
             ) {
                 functionExpressionNode = node.value;