 
     func testNonAtomicCopyObjectiveCAssociationWithSwiftTypes() {
         let association = SampleSwiftClass(42)
-        objCObject.associate(association, withKey: SampleKey, usingPolicy: .OBJC_ASSOCIATION_COPY_NONATOMIC)
-        let reference = objCObject.associationForKey(SampleKey) as? SampleSwiftClass
+        objCObject.associate(association, withKey: SampleKey1, usingPolicy: .OBJC_ASSOCIATION_COPY_NONATOMIC)
+        let reference = objCObject.associationForKey(SampleKey1) as? SampleSwiftClass
         XCTAssertEqual(reference, association, "The Objective-C object should have an associated Swift object")
         XCTAssertTrue(reference !== association, "The association should be made with a copy of the original object")
         //  TODO: test atomicity
 
-        objCObject.associate(swiftStructAssociation, withKey: SampleKey, usingPolicy: .OBJC_ASSOCIATION_COPY_NONATOMIC)
-        XCTAssertEqual(
-            objCObject.associationForKey(SampleKey) as? SampleSwiftStructure,
+        objCObject.associate(swiftStructAssociation, withKey: SampleKey1, usingPolicy: .OBJC_ASSOCIATION_COPY_NONATOMIC)
+        XCTAssertEqual(
+            objCObject.associationForKey(SampleKey1) as? SampleSwiftStructure,
             swiftStructAssociation,
             "The Objective-C object should have an associated Swift struct"
         )
         //  TODO: test atomicity
 
-        objCObject.associate(swiftEnumAssociation, withKey: SampleKey, usingPolicy: .OBJC_ASSOCIATION_COPY_NONATOMIC)
-        XCTAssertEqual(
-            objc_getAssociatedObject(objCObject, SampleKey) as? SampleSwiftEnumeration,
+        objCObject.associate(swiftEnumAssociation, withKey: SampleKey1, usingPolicy: .OBJC_ASSOCIATION_COPY_NONATOMIC)
+        XCTAssertEqual(
+            objc_getAssociatedObject(objCObject, SampleKey1) as? SampleSwiftEnumeration,
             swiftEnumAssociation,
             "The Objective-C object should have an associated Swift enum"
         )


    func testRetrievingSwiftAssociationsFromSwiftObject() {
        let objectAssociation = SampleSwiftClass(42)
        objc_setAssociatedObject(swiftObject, SampleKey, objectAssociation, .OBJC_ASSOCIATION_RETAIN)
        XCTAssertEqual(
            swiftObject.associationForKey(SampleKey) as? SampleSwiftClass,
            objectAssociation,
            "The associated object should be retrieved with its key"
        )

        objc_setAssociatedObject(swiftObject, SampleKey, swiftStructAssociation, .OBJC_ASSOCIATION_RETAIN)
        XCTAssertEqual(
            swiftObject.associationForKey(SampleKey) as? SampleSwiftStructure,
            swiftStructAssociation,
            "The associated struct should be retrieved with its key"
        )

        objc_setAssociatedObject(swiftObject, SampleKey, swiftEnumAssociation, .OBJC_ASSOCIATION_RETAIN)
        XCTAssertEqual(
            swiftObject.associationForKey(SampleKey) as? SampleSwiftEnumeration,
            swiftEnumAssociation,
            "The associated enum should be retrieved with its key"
        )


        XCTAssertNotNil(weakReference, "The default policy should be non-atomic retain")

        swiftObject.associate(objCStructAssociation, withKey: SampleKey1, usingPolicy: .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
        XCTAssertTrue(
            SampleObjectiveCStructuresEqual(
                swiftObject.associationForKey(SampleKey1) as! SampleObjectiveCStructure,
                objCStructAssociation
            ),
            "The default policy should be non-atomic retain"
        )
        //  TODO: test atomicity

        swiftObject.associate(objCEnumAssociation, withKey: SampleKey1, usingPolicy: .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
        XCTAssertEqual(
            objc_getAssociatedObject(swiftObject, SampleKey1) as? SampleObjectiveCEnumeration,
            objCEnumAssociation,
            "The default policy should be non-atomic retain"
        )
