{"ScriptPreparationCode":"var Animal = class Animal {\r\n constructor(sound, name) {\r\n this.sound = sound;\r\n this.name = name; \r\n }\r\n getMessage() {\r\n return 1337;\r\n }\r\n}\r\n\r\nvar Dog = class Dog extends Animal {\r\n constructor() {\r\n super(\u0027woof\u0027, \u0027dog\u0027);\r\n this.legs = 4\r\n }\r\n \r\n // hard coded values\r\n usingThis() {\r\n this.getMessage();\r\n }\r\n usingSuper() {\r\n super.getMessage();\r\n }\r\n \r\n // class variables\r\n usingThisVariables() {\r\n return this.sound;\r\n }\r\n usingSuperVariable() {\r\n \treturn super.sound; \r\n }\r\n}\r\n\r\nvar animal = new Animal(\u0027meow\u0027, \u0027cat\u0027);\r\nvar dog = new Dog();","TestCases":[{"Name":"usingThis","Code":"const foo = dog.usingThis();","IsDeferred":false},{"Name":"usingSuper","Code":"const foo = dog.usingSuper();","IsDeferred":false},{"Name":"usingThisVariables","Code":"const foo = dog.usingThisVariables();","IsDeferred":false},{"Name":"usingSuperVariable","Code":"const foo = dog.usingSuperVariable();","IsDeferred":false}]}