             case UnboxTestBaseMock.optionalStringKey:
                 verificationOutcome = self.verifyPropertyValue(value: self.optionalString, againstDictionaryValue: value)
             case UnboxTestBaseMock.requiredURLKey:
-                verificationOutcome = self.verifyURLPropertyValue(value: self.requiredURL, againstDictionaryValue: value)
+                verificationOutcome = self.verifyTransformableValue(value: self.requiredURL, againstDictionaryValue: value)
             case UnboxTestBaseMock.optionalURLKey:
-                verificationOutcome = self.verifyURLPropertyValue(value: self.optionalURL, againstDictionaryValue: value)
+                verificationOutcome = self.verifyTransformableValue(value: self.optionalURL, againstDictionaryValue: value)
             case UnboxTestBaseMock.requiredArrayKey:
                 verificationOutcome = self.verifyArrayPropertyValue(value: self.requiredArray, againstDictionaryValue: value)
             case UnboxTestBaseMock.optionalArrayKey:

    }
    
    func testRequiredContext() {
        let dictionary = [
            "nested" : [:],
            "nestedArray": [[:]]
        ]

        return false
    }
    
    func verifyEnumArrayPropertyValue<T: UnboxableEnum>(value: [T]?, againstDictionaryValue dictionaryValue: Any?) -> Bool where T: Equatable {
        if let propertyValue = value {
            if let dictionaryArrayValue = dictionaryValue as? [T.RawValue] {
                for i in 0..<dictionaryArrayValue.count {
