Bike.Test.TypeTest.FuncsOnObjects C# (CSharp) Method

FuncsOnObjects() private method

private FuncsOnObjects ( ) : void
return void
        public void FuncsOnObjects()
        {
            Interpret(
                @"var p = (func() {
                     var age = 10;
                     return {
                        getAge: func() {return age;}
                     };
                  })();
                  var age = p.getAge();
                  var age2 = p['getAge']();")
                .Equal("age", 10)
                .Equal("age2", 10);

            Interpret(
                @"p = {
                     age: 10,
                     getAge: func() {return this.age;}
                  };
                  age = p.getAge();")
                .Equal("age", 10);

            Interpret(
                @"p.setAge = func(age) {this.age = age;};
                  p.setAge(1);
                  age = p.getAge();")
                .Equal("age", 1);

            Interpret(
                @"p.alias = func() {return this.getAge();};
                  age = p.alias();")
                .Equal("age", 1);

            Interpret(@"var p2 = {age: 5, getAge: p.getAge};
                        age = p2.getAge();").Equal("age", 5);
        }