diff --git a/test/test_reference_data_handler/test_abstract_reference_data_handler.py b/test/test_reference_data_handler/test_abstract_reference_data_handler.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..98267fc913df299647c0fe8a1d95074e5d22bf04 100644
--- a/test/test_reference_data_handler/test_abstract_reference_data_handler.py
+++ b/test/test_reference_data_handler/test_abstract_reference_data_handler.py
@@ -0,0 +1,54 @@
+import pytest
+import mock
+
+from mlair.reference_data_handler.abstract_reference_data_handler import AbstractReferenceModel
+from mlair.reference_data_handler.abstract_reference_data_handler import AbstractReferenceb2share
+
+
+class TestAbstractReferenceDataHandler:
+
+    def test_init(self):
+        assert isinstance(AbstractReferenceModel(), AbstractReferenceModel)
+
+    def test_make_reference_available_locally(self):
+        arm = AbstractReferenceModel()
+        with pytest.raises(NotImplementedError):
+            arm.make_reference_available_locally()
+
+    @mock.patch("os.listdir", side_effect=[True, False, FileNotFoundError, ValueError])
+    def test_is_reference_available_locally(self, mock_file):
+        arm = AbstractReferenceModel()
+        assert arm.is_reference_available_locally("TestFile/") == True
+        assert arm.is_reference_available_locally("TestFile/") == False
+        assert arm.is_reference_available_locally("TestFile/") == False
+        with pytest.raises(ValueError):
+            arm.is_reference_available_locally("TestFile/")
+
+
+class TestAbstractReferenceb2share:
+
+    @pytest.fixture
+    def ar(self):
+        b2share_hosturl = "b2share.url"
+        b2share_bucket = "1111-2222-3333"
+        b2share_key = "b2share_key.tar.gz"
+        return AbstractReferenceb2share(b2share_hosturl, b2share_bucket, b2share_key)
+
+    def test_inheritance(self):
+        assert issubclass(AbstractReferenceb2share, AbstractReferenceModel)
+
+    def test_init(self, ar):
+        assert isinstance(ar, AbstractReferenceb2share)
+        assert ar.b2share_hosturl == "b2share.url"
+        assert ar.b2share_bucket == "1111-2222-3333"
+        assert ar.b2share_key == "b2share_key.tar.gz"
+
+    def test_b2share_url(self, ar):
+        assert isinstance(ar.b2share_url, str)
+        assert ar.b2share_url == 'b2share.url/api/files/1111-2222-3333'
+
+    def test_bar_custom(self):
+        pass
+
+    def test_download_from_b2share(self):
+        pass
\ No newline at end of file
diff --git a/test/test_reference_data_handler/test_intellio3_v1_reference.py b/test/test_reference_data_handler/test_intellio3_v1_reference.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..3608f8dd4304c3245d112771aba29cf196e68ad5 100644
--- a/test/test_reference_data_handler/test_intellio3_v1_reference.py
+++ b/test/test_reference_data_handler/test_intellio3_v1_reference.py
@@ -0,0 +1,45 @@
+import pytest
+
+
+from mlair.reference_data_handler.intellio3_v1_reference import IntelliO3Reference
+from mlair.reference_data_handler.abstract_reference_data_handler import AbstractReferenceb2share
+
+
+class TestIntelliO3Reference:
+
+    @pytest.fixture
+    def io3(self):
+        return IntelliO3Reference("IntelliO3-test")
+
+    def test_init_none_path(self):
+        io3 = IntelliO3Reference("IntelliO3-test")
+        assert isinstance(io3, IntelliO3Reference)
+        assert io3.ref_name == "IntelliO3-test"
+        assert io3.ref_store_path == "IntelliO3-test/"
+        assert io3.tmp_extract_path == "tmp_downloads/"
+        assert io3.orig_forecast_path == "IntelliO3-ts/IntelliO3-ts_network/forecasts/"
+        assert io3.file_pattern == "forecasts_DE?????_test.nc"
+        assert io3.b2share_key == "IntelliO3-ts.tar.gz"
+        assert io3.b2share_bucket == "0cae9db2-f388-4136-8d28-9d9c5665d641"
+        assert io3.b2share_hosturl == "https://b2share.eudat.eu"
+
+    def test_init_extra_path(self):
+        io3 = IntelliO3Reference("IntelliO3-test", "DummyExtraPath/")
+        assert isinstance(io3, IntelliO3Reference)
+        assert io3.ref_store_path == "DummyExtraPath/"
+
+    def test_inheritance(self):
+        assert issubclass(IntelliO3Reference, AbstractReferenceb2share)
+
+    def test_untar_forecasts(self, io3):
+        pass
+
+    def test_file_list(self):
+        pass
+
+    def test_read_and_drop(self):
+        pass
+
+    def test_make_reference_available_locally(self):
+        pass
+
diff --git a/test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz b/test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..5d98fd1b0c7758489aafeb9da4901fd1c4c7736d
Binary files /dev/null and b/test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz differ