'Verify a `setting` entry.
Arguments:
setting (WebElement): Selenium WebElement
field_name (str): Name of field
field_value (str): Value of field
Returns:
bool: Does `setting` have correct value.'

@staticmethod
def _verify_setting_entry(setting, field_name, field_value):

    if (field_name != setting.find_element_by_class_name('setting-label').get_attribute('innerHTML')):
        return False
    classes = setting.get_attribute('class').split()
    list_type_classes = ['metadata-list-enum', 'metadata-dict', 'metadata-video-translations']
    is_list_type = any(((list_type in classes) for list_type in list_type_classes))
    if is_list_type:
        current_value = ',    '.join((ele.get_attribute('value') for ele in setting.find_elements_by_class_name('list-settings-item')))
    elif ('metadata-videolist-enum' in setting.get_attribute('class')):
        current_value = ',    '.join((item.find_element_by_tag_name('input').get_attribute('value') for item in setting.find_elements_by_class_name('videolist-settings-item')))
    else:
        current_value = setting.find_element_by_class_name('setting-input').get_attribute('value')
    if (field_value != current_value):
        return False
    if ('metadata-videolist-enum' not in setting.get_attribute('class')):
        setting_clear_button = setting.find_elements_by_class_name('setting-clear')[0]
        if ('active' not in setting_clear_button.get_attribute('class')):
            return False
    return True
