示例#1
0
    def test_get_slack_api_data(self, mock_get: mock.Mock) -> None:
        token = 'xoxp-valid-token'
        slack_user_list_url = "https://slack.com/api/users.list"
        self.assertEqual(
            get_slack_api_data(slack_user_list_url, "members", token=token),
            "user_data")
        token = 'xoxp-invalid-token'
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members", token=token)
        self.assertEqual(
            invalid.exception.args,
            ('Error accessing Slack API: invalid_auth', ),
        )

        token = 'xoxe-invalid-token'
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members", token=token)
        self.assertTrue(invalid.exception.args[0].startswith(
            "Invalid Slack legacy token.\n"))

        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members")
        self.assertEqual(
            invalid.exception.args,
            ('Slack token missing in kwargs', ),
        )

        token = 'xoxp-status404'
        wrong_url = "https://slack.com/api/wrong"
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(wrong_url, "members", token=token)
        self.assertEqual(
            invalid.exception.args,
            ('HTTP error accessing the Slack API.', ),
        )
示例#2
0
    def test_get_slack_api_data(self, mock_get: mock.Mock) -> None:
        token = 'valid-token'
        slack_user_list_url = "https://slack.com/api/users.list"
        self.assertEqual(get_slack_api_data(token, slack_user_list_url, "members"),
                         "user_data")
        token = 'invalid-token'
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(token, slack_user_list_url, "members")
        self.assertEqual(invalid.exception.args, ('Enter a valid token!',),)

        token = 'status404'
        wrong_url = "https://slack.com/api/wrong"
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(token, wrong_url, "members")
        self.assertEqual(invalid.exception.args, ('Something went wrong. Please try again!',),)
示例#3
0
    def test_get_slack_api_data(self, mock_get: mock.Mock) -> None:
        token = 'valid-token'
        slack_user_list_url = "https://slack.com/api/users.list"
        self.assertEqual(get_slack_api_data(token, slack_user_list_url, "members"),
                         "user_data")
        token = 'invalid-token'
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(token, slack_user_list_url, "members")
        self.assertEqual(invalid.exception.args, ('Enter a valid token!',),)

        token = 'status404'
        wrong_url = "https://slack.com/api/wrong"
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(token, wrong_url, "members")
        self.assertEqual(invalid.exception.args, ('Something went wrong. Please try again!',),)
示例#4
0
    def test_get_slack_api_data(self) -> None:
        token = "xoxp-valid-token"
        slack_user_list_url = "https://slack.com/api/users.list"
        responses.add_callback(responses.GET,
                               slack_user_list_url,
                               callback=request_callback)
        self.assertEqual(
            get_slack_api_data(slack_user_list_url, "members", token=token),
            "user_data")
        token = "xoxp-invalid-token"
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members", token=token)
        self.assertEqual(invalid.exception.args,
                         ("Error accessing Slack API: invalid_auth", ))

        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members")
        self.assertEqual(invalid.exception.args,
                         ("Slack token missing in kwargs", ))

        token = "xoxp-status404"
        wrong_url = "https://slack.com/api/wrong"
        responses.add_callback(responses.GET,
                               wrong_url,
                               callback=request_callback)
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(wrong_url, "members", token=token)
        self.assertEqual(invalid.exception.args,
                         ("HTTP error accessing the Slack API.", ))
示例#5
0
    def test_get_slack_api_data(self) -> None:
        token = "xoxp-valid-token"

        # Users list
        slack_user_list_url = "https://slack.com/api/users.list"
        responses.add_callback(responses.GET, slack_user_list_url, callback=request_callback)
        self.assertEqual(
            get_slack_api_data(slack_user_list_url, "members", token=token), "user_data"
        )

        # Users info
        slack_users_info_url = "https://slack.com/api/users.info"
        user_id = "U8X25EBAB"
        responses.add_callback(responses.GET, slack_users_info_url, callback=request_callback)
        self.assertEqual(
            get_slack_api_data(slack_users_info_url, "user", token=token, user=user_id),
            {"id": user_id, "team_id": "T5YFFM2QY"},
        )
        # Should error if the required user argument is not specified
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_users_info_url, "user", token=token)
        self.assertEqual(invalid.exception.args, ("Error accessing Slack API: user_not_found",))
        # Should error if the required user is not found
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_users_info_url, "user", token=token, user="******")
        self.assertEqual(invalid.exception.args, ("Error accessing Slack API: user_not_found",))

        # Team info
        slack_team_info_url = "https://slack.com/api/team.info"
        responses.add_callback(responses.GET, slack_team_info_url, callback=request_callback)
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_team_info_url, "team", token=token, team="wedontexist")
        self.assertEqual(invalid.exception.args, ("Error accessing Slack API: team_not_found",))
        # Should error if the required user argument is not specified
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_team_info_url, "team", token=token)
        self.assertEqual(invalid.exception.args, ("Error accessing Slack API: team_not_found",))

        token = "xoxp-invalid-token"
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members", token=token)
        self.assertEqual(invalid.exception.args, ("Error accessing Slack API: invalid_auth",))

        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(slack_user_list_url, "members")
        self.assertEqual(invalid.exception.args, ("Slack token missing in kwargs",))

        token = "xoxp-status404"
        wrong_url = "https://slack.com/api/wrong"
        responses.add_callback(responses.GET, wrong_url, callback=request_callback)
        with self.assertRaises(Exception) as invalid:
            get_slack_api_data(wrong_url, "members", token=token)
        self.assertEqual(invalid.exception.args, ("HTTP error accessing the Slack API.",))