dialect.insertOrUpdateTuple( entityKey, tuple, emptyTupleContext() );
AssociationKey key = createAssociationKey(
entityKey, "addresses", "user_address", new String[] { "user_id" }, new Object[] { "Emmanuel" }, rowKeyColumnNames
);
Association createAssociation = dialect.createAssociation( key, emptyAssociationContext() );
Map<String, Object> properties = new HashMap<String, Object>();
properties.put( "user_id", "Emmanuel" );
properties.put( "addresses_id", 1 );
Tuple associationTuple = new Tuple( new CouchDBTupleSnapshot( properties ) );
RowKey rowKey = new RowKey( rowKeyColumnNames, rowKeyColumnValues );
createAssociation.put( rowKey, associationTuple );
dialect.insertOrUpdateAssociation( key, createAssociation, emptyAssociationContext() );
Association actualAssociation = dialect.getAssociation( key, emptyAssociationContext() );
assertThat( actualAssociation.get( rowKey ).hashCode() ).isNotNull();
}