test cases for Delegate
authorAnirban Bhattacharjee <anirban@mono-cvs.ximian.com>
Tue, 1 Jun 2004 06:12:41 +0000 (06:12 -0000)
committerAnirban Bhattacharjee <anirban@mono-cvs.ximian.com>
Tue, 1 Jun 2004 06:12:41 +0000 (06:12 -0000)
svn path=/trunk/mcs/; revision=28612

mcs/btests/DelegateA.vb [new file with mode: 0644]
mcs/btests/DelegateC1.vb [new file with mode: 0644]
mcs/btests/DelegateC2.vb [new file with mode: 0644]
mcs/btests/Test.Sources

diff --git a/mcs/btests/DelegateA.vb b/mcs/btests/DelegateA.vb
new file mode 100644 (file)
index 0000000..53dd255
--- /dev/null
@@ -0,0 +1,36 @@
+Imports System
+
+
+
+Module M
+       Delegate Sub SD()
+       sub f()
+       End sub
+
+       Public Delegate Function SF(a as integer) as Integer
+       Public Function f1(a as integer) as Integer
+               return a
+       End Function
+
+       Sub Main()
+               dim d1 as SD 
+               d1 = new SD(AddressOf f)
+               d1.Invoke()
+
+               'dim d2 as SD
+               'd2 = AddressOf f  ''//this invocation is not functional yet
+               'd2.Invoke()
+
+               dim d3 as new SD(AddressOf f)
+               d3.Invoke()
+
+               dim d4 as SF
+               d4 = new SF(AddressOf f1)
+               Dim i as Integer = d4.Invoke(10)
+               if i <> 10 then
+                       Throw new System.Exception ("#A1, Unexpected result")
+               end if
+
+               
+       End Sub
+End Module
diff --git a/mcs/btests/DelegateC1.vb b/mcs/btests/DelegateC1.vb
new file mode 100644 (file)
index 0000000..079300b
--- /dev/null
@@ -0,0 +1,14 @@
+Imports System
+
+Module M
+       Delegate Sub SD()
+       sub f(i as integer)
+       End sub
+
+
+       Sub Main()
+               dim d1 as SD 
+               d1= new SD(AddressOf f)
+               d1.Invoke()
+       End Sub
+End Module
diff --git a/mcs/btests/DelegateC2.vb b/mcs/btests/DelegateC2.vb
new file mode 100644 (file)
index 0000000..b6d27b5
--- /dev/null
@@ -0,0 +1,18 @@
+Imports System
+
+Module M
+       Delegate Sub SD()
+       sub f()
+       End sub
+
+       Public Delegate Function SF(a as integer) as Integer
+       Public Function f1(a as integer) as Integer
+               return a
+       End Function
+
+       Sub Main()
+               dim d1 as SD 
+               d1= new SD(AddressOf f1)
+               d1.Invoke()
+       End Sub
+End Module
index 1f494a1c6bc99f96d7f27fd328838d3143190956..dd863145d10b29c4b445fa7514229afdfa9df4c9 100644 (file)
@@ -132,7 +132,8 @@ PropertyA \
 PropertyB \
 PropertyC \
 PropertyD \
-PropertyE                                                          
+PropertyE \
+DelegateA
 
 # All negetive test cases which should
 # fail during compilation goes here
@@ -281,7 +282,9 @@ EnumC7 \
 PropertyC1 \
 PropertyC2 \
 PropertyC3 \
-PropertyC4 
+PropertyC4 \
+DelegateC1 \
+DelegateC2 
 
 # All negetive test cases which should fail at
 # runtime goes here