'Validates the state of this split_test instance. This is the override of the general XBlock method,
and it will also ask its superclass to validate.'

def validate(self):

    validation = super(SplitTestDescriptor, self).validate()
    split_test_validation = self.validate_split_test()
    if split_test_validation:
        return validation
    validation = StudioValidation.copy(validation)
    if (validation and ((not self.is_configured) and (len(split_test_validation.messages) == 1))):
        validation.summary = split_test_validation.messages[0]
    else:
        validation.summary = self.general_validation_message(split_test_validation)
        validation.add_messages(split_test_validation)
    return validation
