Beispiel #1
0
    def test_get_master_token(self, m_perform_master_login: NonCallableMock,
                              m_log: NonCallableMock) -> None:
        """Test getting master token"""
        # No token in response
        self.assertIsNone(self.client.get_master_token())
        m_perform_master_login.assert_called_once_with(
            self.client.username, self.client.password,
            self.client.get_android_id())
        self.assertEqual(m_log.call_count, 1)

        # Reset mocks
        m_perform_master_login.reset_mock()
        m_log.reset_mock()

        # With token in response
        expected_master_token = faker.master_token()
        m_perform_master_login.return_value = {"Token": expected_master_token}
        master_token = self.client.get_master_token()
        m_perform_master_login.assert_called_once_with(
            self.client.username, self.client.password,
            self.client.get_android_id())
        self.assertEqual(expected_master_token, master_token)
        self.assertEqual(m_log.call_count, 0)

        # Another request - must return the same token all the time
        master_token = self.client.get_master_token()
        self.assertEqual(expected_master_token, master_token)
Beispiel #2
0
    def test_get_access_token(
        self,
        m_perform_oauth: NonCallableMock,
        m_get_master_token: NonCallableMock,
        m_log: NonCallableMock,
    ) -> None:
        """Test getting access token"""
        master_token = faker.master_token()
        m_get_master_token.return_value = {"Token": master_token}

        # No token in response
        self.assertIsNone(self.client.get_access_token())
        m_perform_oauth.assert_called_once_with(
            self.client.username,
            master_token,
            self.client.get_android_id(),
            app=ACCESS_TOKEN_APP_NAME,
            service=ACCESS_TOKEN_SERVICE,
            client_sig=ACCESS_TOKEN_CLIENT_SIGNATURE,
        )
        self.assertEqual(m_log.call_count, 1)

        # Reset mocks
        m_perform_oauth.reset_mock()
        m_log.reset_mock()

        # With token in response
        expected_access_token = faker.access_token()
        m_perform_oauth.return_value = {"Auth": expected_access_token}
        access_token = self.client.get_access_token()
        m_perform_oauth.assert_called_once_with(
            self.client.username,
            master_token,
            self.client.get_android_id(),
            app=ACCESS_TOKEN_APP_NAME,
            service=ACCESS_TOKEN_SERVICE,
            client_sig=ACCESS_TOKEN_CLIENT_SIGNATURE,
        )
        self.assertEqual(expected_access_token, access_token)
        self.assertEqual(m_log.call_count, 0)

        # Reset mocks
        m_perform_oauth.reset_mock()
        m_log.reset_mock()

        # Another request with non expired token must return the same token
        # (no new requests)
        access_token = self.client.get_access_token()
        self.assertEqual(expected_access_token, access_token)
        self.assertEqual(m_perform_oauth.call_count, 0)

        # Another request with expired token must return new token (new request)
        assert self.client.access_token_date is not None
        self.client.access_token_date = self.client.access_token_date - timedelta(
            ACCESS_TOKEN_DURATION + 1)
        access_token = self.client.get_access_token()
        self.assertEqual(m_perform_oauth.call_count, 1)
Beispiel #3
0
 def test_get_custom_build_selector_with_allowlist(
     self,
     mock_gen_unboxing: NonCallableMock,
     mock_make_file_manager: NonCallableMock,
     mock_parse_native_yaml: NonCallableMock,
     mock_get_custom_build_selector: NonCallableMock,
 ) -> None:
     args = ["--op_registration_allowlist=op1", "--op_selection_yaml_path=path2"]
     gen_unboxing.main(args)
     mock_get_custom_build_selector.assert_called_once_with(["op1"], "path2")
Beispiel #4
0
    def test_initialization__valid_verbose_logger(
            self, m_set_level: NonCallableMock) -> None:
        """Valid initialization tests with verbose logging"""
        # Non verbose
        GLocalAuthenticationTokens(username=faker.word(),
                                   password=faker.word())
        m_set_level.assert_called_once_with(logging.ERROR)

        m_set_level.reset_mock()

        # Verbose
        GLocalAuthenticationTokens(username=faker.word(),
                                   password=faker.word(),
                                   verbose=True)
        m_set_level.assert_called_once_with(logging.DEBUG)
Beispiel #5
0
 def test_get_custom_build_selector_with_allowlist_yaml(
     self,
     mock_gen_unboxing: NonCallableMock,
     mock_make_file_manager: NonCallableMock,
     mock_parse_native_yaml: NonCallableMock,
     mock_get_custom_build_selector: NonCallableMock,
 ) -> None:
     temp_file = tempfile.NamedTemporaryFile()
     temp_file.write(b"- aten::add.Tensor")
     temp_file.seek(0)
     args = [
         f"--TEST_ONLY_op_registration_allowlist_yaml_path={temp_file.name}",
         "--op_selection_yaml_path=path2",
     ]
     gen_unboxing.main(args)
     mock_get_custom_build_selector.assert_called_once_with(
         ["aten::add.Tensor"], "path2")
     temp_file.close()