docs: def create_authorization(self, scopes=github.GithubObject.NotSet, note=github.GithubObject.NotSet, note_url=github.GithubObject.NotSet, client_id=github.GithubObject.NotSet, client_secret=github.GithubObject.NotSet, onetime_password=None):
          """
          :calls: `POST /authorizations <http://developer.github.com/v3/oauth>`_
          :param scopes: list of string
          :param note: string
          :param note_url: string
          :param client_id: string
          :param client_secret: string
          :param onetime_password: string
          :rtype: :class:`github.Authorization.Authorization`
          """
          assert scopes is github.GithubObject.NotSet or all(isinstance(element, (str, unicode)) for element in scopes), scopes
          assert note is github.GithubObject.NotSet or isinstance(note, (str, unicode)), note
          assert note_url is github.GithubObject.NotSet or isinstance(note_url, (str, unicode)), note_url
          assert client_id is github.GithubObject.NotSet or isinstance(client_id, (str, unicode)), client_id
          assert client_secret is github.GithubObject.NotSet or isinstance(client_secret, (str, unicode)), client_secret
          assert onetime_password is None or isinstance(onetime_password, (str, unicode)), onetime_password
          post_parameters = dict()
          if scopes is not github.GithubObject.NotSet:
              post_parameters["scopes"] = scopes
          if note is not github.GithubObject.NotSet:
              post_parameters["note"] = note
          if note_url is not github.GithubObject.NotSet:
              post_parameters["note_url"] = note_url
          if client_id is not github.GithubObject.NotSet:
              post_parameters["client_id"] = client_id
          if client_secret is not github.GithubObject.NotSet:
              post_parameters["client_secret"] = client_secret
          if onetime_password is not None:
              request_header = {Consts.headerOTP: onetime_password}  # pragma no cover (Should be covered)
          else:
              request_header = None
          headers, data = self._requester.requestJsonAndCheck(
              "POST",
              "/authorizations",
              input=post_parameters,
              headers=request_header,
          )
          return github.Authorization.Authorization(self._requester, headers, data, completed=True)