Socket
Socket
Sign inDemoInstall

ast-types

Package Overview
Dependencies
Maintainers
1
Versions
172
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ast-types - npm Package Compare versions

Comparing version 0.2.25 to 0.3.0

2

main.js

@@ -20,3 +20,5 @@ var types = require("./lib/types");

exports.eachField = types.eachField;
exports.someField = types.someField;
exports.traverse = require("./lib/traverse");
exports.finalize = types.finalize;
exports.NodePath = require("./lib/node-path");

2

package.json

@@ -21,3 +21,3 @@ {

],
"version": "0.2.25",
"version": "0.3.0",
"homepage": "http://github.com/benjamn/ast-types",

@@ -24,0 +24,0 @@ "repository": {

@@ -9,2 +9,4 @@ var types = require("../main");

var parse = esprima.parse;
var Path = require("ast-path").Path;
var NodePath = require("../lib/node-path");

@@ -326,2 +328,36 @@ exports.testBasic = function(t, assert) {

exports.testNodePath = function(t, assert) {
assert.strictEqual(new Path({}).constructor, Path);
var np = new NodePath(b.identifier("foo"));
assert.strictEqual(np.constructor, NodePath);
assert.ok(np.get("name") instanceof NodePath);
var ast = b.expressionStatement(
b.unaryExpression("!", b.sequenceExpression([
b.identifier("a"),
b.identifier("b"),
b.identifier("c")
]))
);
var path = new NodePath(ast);
var opPath = path.get("expression", "operator");
assert.strictEqual(opPath.value, "!");
assert.strictEqual(opPath.node, ast.expression);
assert.strictEqual(opPath.parent, path);
assert.strictEqual(opPath.parent.node, ast);
var argPath = path.get("expression", "argument");
assert.ok(argPath.needsParens());
var exprsPath = argPath.get("expressions");
assert.ok(!exprsPath.needsParens());
assert.strictEqual(exprsPath.get("length").value, 3);
assert.ok(!exprsPath.get(1).needsParens());
t.finish();
};
var scope = [

@@ -328,0 +364,0 @@ "var foo = 42;",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc