Esempio n. 1
0
        public void DynamicBinaryNoOverride()
        {
            dynamic x = new TestDynamic();
            dynamic y = new TestDynamic();

            Assert.Throws <RuntimeBinderException>(() => x + y);
        }
Esempio n. 2
0
        public void AttemptWriteReadonlyField()
        {
            TestDynamic td = new TestDynamic();
            dynamic     d  = td;

            Assert.Throws <RuntimeBinderException>(() => d.ReadonlyField = 3);
            Assert.Equal(0, td.ReadonlyField); // Confirm exception happened before a write, rather than after.
        }
Esempio n. 3
0
        public void ReadWriteHidingField()
        {
            TestDynamic td = new TestDynamic();
            dynamic     d  = td;

            td.HideField = 9;
            Assert.Equal(9, d.HideField);
            Assert.Equal(9, td.HideField);
            Assert.Equal(0, ((TestDynamicBase)td).HideField);
        }
Esempio n. 4
0
        public void IndexingFromStaticMember()
        {
            dynamic d = new TestDynamic();

            d[0] = 1;
            Assert.Equal(1, d[0]);
            Assert.Throws <RuntimeBinderException>(() => d[0] = "One");
            Assert.Throws <RuntimeBinderException>(() =>
            {
                string val = d[0];
            });
            Assert.Throws <RuntimeBinderException>(() => d["index"]);
        }
Esempio n. 5
0
        public void DynamicUnaryOperationNoOverrides()
        {
            dynamic d = new TestDynamic();

            Assert.Throws <RuntimeBinderException>(() => - d);
        }
Esempio n. 6
0
 public void IndexingFromStaticMember()
 {
     dynamic d = new TestDynamic();
     d[0] = 1;
     Assert.Equal(1, d[0]);
     Assert.Throws<RuntimeBinderException>(() => d[0] = "One");
     Assert.Throws<RuntimeBinderException>(() =>
     {
         string val = d[0];
     });
     Assert.Throws<RuntimeBinderException>(() => d["index"]);
 }
Esempio n. 7
0
 public void DynamicBinaryNoOverride()
 {
     dynamic x = new TestDynamic();
     dynamic y = new TestDynamic();
     Assert.Throws<RuntimeBinderException>(() => x + y);
 }
Esempio n. 8
0
 public void DynamicUnaryOperationNoOverrides()
 {
     dynamic d = new TestDynamic();
     Assert.Throws<RuntimeBinderException>(() => -d);
 }
Esempio n. 9
0
 public void ReadWriteHidingField()
 {
     TestDynamic td = new TestDynamic();
     dynamic d = td;
     td.HideField = 9;
     Assert.Equal(9, d.HideField);
     Assert.Equal(9, td.HideField);
     Assert.Equal(0, ((TestDynamicBase)td).HideField);
 }
Esempio n. 10
0
 public void AttemptWriteReadonlyField()
 {
     TestDynamic td = new TestDynamic();
     dynamic d = td;
     Assert.Throws<RuntimeBinderException>(() => d.ReadonlyField = 3);
     Assert.Equal(0, td.ReadonlyField); // Confirm exception happened before a write, rather than after.
 }