Browse Source

Update test reference02 to include object overwriting and string references

Ronny Otto 11 năm trước cách đây
mục cha
commit
ef37ba191c

+ 36 - 1
tests/framework/language/references_02.bmx

@@ -5,6 +5,7 @@ Framework Brl.Standardio
 
 
 Type TMyObject
 Type TMyObject
 	field prop:int = 10
 	field prop:int = 10
+	field stringProp:string = "unmodified"
 End Type
 End Type
 
 
 local obj:TMyObject = new TMyObject
 local obj:TMyObject = new TMyObject
@@ -17,8 +18,42 @@ Function ModifyVar:int(obj:TMyObject var)
 	obj.prop = 30
 	obj.prop = 30
 End Function
 End Function
 
 
+Function ModifyVarNew:int(obj:TMyObject var)
+	obj = New TMyObject
+	obj.prop = 40
+End Function
+
+Function ModifyProp:int(val:int var)
+	val = 50
+End Function
+
+'this should do not change the given param
+Function ModifyNoChange:int(val:int)
+	val = 60
+End Function
+
+'this should do not change the given param
+Function ModifyString:int(val:string var)
+	val = "modified"
+End Function
+
+'this should do not change the given param
+Function ModifyStringNoChange:int(val:string)
+	val = "modified"
+End Function
+
 print obj.prop
 print obj.prop
 Modify(obj)
 Modify(obj)
 print obj.prop
 print obj.prop
 ModifyVar(obj)
 ModifyVar(obj)
-print obj.prop
+print obj.prop
+ModifyVarNew(obj)
+print obj.prop
+ModifyProp(obj.prop)
+print obj.prop
+ModifyNoChange(obj.prop)
+print obj.prop
+ModifyStringNoChange(obj.stringProp)
+print obj.stringProp
+ModifyString(obj.stringProp)
+print obj.stringProp

+ 5 - 0
tests/framework/language/references_02.res

@@ -1,3 +1,8 @@
 10
 10
 20
 20
 30
 30
+40
+50
+50
+unmodified
+modified