Clone/Copy/Release Dictionary Parameters (QTP, TestComplete, VBScript)

Categories: Associative ArraySource code

Parent page: Service Functions – Dictionary (QTP, TestComplete, VBScript)

Description

1. Clone Dictionary object with all parameters

2. Copy parameters from one Dictionary to another

3. Release objects associated to Dictionary keys

Implementation

CloneParameters

Public Function CloneParameters(ByRef objSource)
 Dim objDest, Iter, dvKeys
 Set objDest = CreateObject("Scripting.Dictionary")
	If TypeName (objSource) <> "Dictionary" Then
	 Set CloneParameters = objDest
	 Exit Function
	End If
 dvKeys = objSource.Keys()
 For Iter = 0 To UBound(dvKeys)
		objDest.Item(dvKeys(Iter)) = objSource.Item(dvKeys(Iter))
 Next
 Set CloneParameters = objDest
End Function

CopyParameters

Public Function CopyParameters(ByRef objSource, ByRef objDest)
 Dim Iter, dvKeys
	If TypeName (objDest) <> "Dictionary" Then
	 Set objDest = CloneParameters(objSource)
	 Set CopyParameters = objDest
	 Exit Function
	End If
	If TypeName (objSource) <> "Dictionary" Then
	 Set CopyParameters = objDest
	 Exit Function
	End If
 dvKeys = objSource.Keys()
 For Iter = 0 To UBound(dvKeys)
		objDest.Item(dvKeys(Iter)) = objSource.Item(dvKeys(Iter))
 Next
 Set CopyParameters = objDest
End Function

ReleaseParameters

'Note. Use to release Object type parameters
Public Function ReleaseParameters(ByRef objSource)
 Dim Iter, dvKeys
	If TypeName (objSource) <> "Dictionary" Then
	 Exit Function
	End If
 dvKeys = objSource.Keys()
 For Iter = 0 To UBound(dvKeys)
		Set objSource.Item(dvKeys(Iter)) = Nothing
 Next
End Function

Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported
This work by the author is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported.