def set_roast_properties(self, settings):
        """Set the properties of the roast.

        :param settings: General settings for the roast setup
        :type settings: dict
        :returns: None
        :raises: InvalidInput
        """
        if type(settings) != dict:
            raise InvalidInput("Properties value must be of dict")
        valid = ['name', 'input_weight', 'output_weight', 'operator', 'notes',
                 'coffee']
        for key, value in settings.items():
            if key not in valid:
                continue
            self._roast[key] = value
Set the properties of the roast.

        :param settings: General settings for the roast setup
        :type settings: dict
        :returns: None
        :raises: InvalidInput