UNPKG

shift-interpreter

Version:

Shift-interpreter is an experimental JavaScript meta-interpreter useful for reverse engineering and analysis. One notable difference from other projects is that shift-interpreter retains state over an entire script but can be fed expressions and statement

18 lines 841 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const util_1 = require("../util"); describe('Classes', () => { it('should declare a class', () => { util_1.assertResult(util_1.compare('class A {}; A === A')); }); it('should allow static methods to be called', () => { util_1.assertResult(util_1.compare('class A {static b(){return 20}}; A.b();')); }); it('should allow class to be instantiated methods to be called', () => { util_1.assertResult(util_1.compare('class A {b(){return 2222}}; let a = new A(); a.b();')); }); it('should allow for inheritance', () => { util_1.assertResult(util_1.compare('class A {a(){return "AA"}}; class B extends A {b(){return "BB"}} let b = new B(); b.a() + b.b();')); }); }); //# sourceMappingURL=classes.test.js.map