def check_obj_sim(obja, objb, fields):
    """
    Dirty function for checking if set fields are the same between two objects.
    
    This will throw excpetions if you're using it wrong but I can't tell you what they are...
    """
    for field in fields:
        attr_a = getattr(obja, field)
        attr_b = getattr(objb, field)
        if type(attr_a) is not type(attr_b):
            return False
        if attr_a != attr_b:
            return False
    return True
