'Enable force push protection and configure status check enforcement.
See: http://git.io/v4Gvu
:param str enforcement: (optional), Specifies the enforcement level of
the status checks. Must be one of \'off\', \'non_admins\', or
\'everyone\'. Use `None` or omit to use the already associated value.
:param list status_checks: (optional), An list of strings naming
status checks that must pass before merging. Use `None` or omit to
use the already associated value.'

def protect(self, enforcement=None, status_checks=None):

    previous_values = self.protection[u'required_status_checks']
    if (enforcement is None):
        enforcement = previous_values[u'enforcement_level']
    if (status_checks is None):
        status_checks = previous_values[u'contexts']
    edit = {u'protection': {u'enabled': True, u'required_status_checks': {u'enforcement_level': enforcement, u'contexts': status_checks}}}
    json = self._json(self._patch(self._api, data=dumps(edit), headers=self.PREVIEW_HEADERS), 200)
    self._update_attributes(json)
    return True
