From d98ddba96016ff982b48ba821aea6676a0d41d41 Mon Sep 17 00:00:00 2001 From: Val Brodsky Date: Tue, 27 Aug 2024 13:56:05 -0700 Subject: [PATCH] Restore client.headers --- libs/labelbox/src/labelbox/client.py | 5 +++++ libs/labelbox/tests/unit/test_client.py | 15 +++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 libs/labelbox/tests/unit/test_client.py diff --git a/libs/labelbox/src/labelbox/client.py b/libs/labelbox/src/labelbox/client.py index 59e5e874c..66d462521 100644 --- a/libs/labelbox/src/labelbox/client.py +++ b/libs/labelbox/src/labelbox/client.py @@ -10,6 +10,7 @@ from collections import defaultdict from datetime import datetime, timezone from typing import Any, List, Dict, Union, Optional, overload, Callable +from types import MappingProxyType from labelbox.schema.search_filters import SearchFilter import requests @@ -128,6 +129,10 @@ def _init_connection(self) -> requests.Session: return connection + @property + def headers(self) -> MappingProxyType: + return self._connection.headers + def _default_headers(self): return { 'Authorization': 'Bearer %s' % self.api_key, diff --git a/libs/labelbox/tests/unit/test_client.py b/libs/labelbox/tests/unit/test_client.py new file mode 100644 index 000000000..9a97591f3 --- /dev/null +++ b/libs/labelbox/tests/unit/test_client.py @@ -0,0 +1,15 @@ +import os + +from unittest.mock import patch + +from labelbox.client import Client + + +# @patch.dict(os.environ, {'LABELBOX_API_KEY': 'bar'}) +def test_headers(): + client = Client(api_key="api_key", endpoint="http://localhost:8080/_gql") + assert client.headers + assert client.headers["Authorization"] == "Bearer api_key" + assert client.headers["Content-Type"] == "application/json" + assert client.headers["User-Agent"] + assert client.headers["X-Python-Version"]