Clone/Copy/Release Dictionary Parameters (QTP, TestComplete, VBScript)
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