diff --git a/tests/test_state.py b/tests/test_state.py
index 490b091f9d6c1585cb80d4d288a35e1f88e0ebb2..87a284cd9265df4630475541a63cf391e2928197 100644
--- a/tests/test_state.py
+++ b/tests/test_state.py
@@ -1,14 +1,25 @@
 import pytest
 import caosdb as db
+from caosdb import administration as admin
+
+_ORIGINAL_EXT_ENTITY_STATE = ""
 
 
 def teardown_module():
     d = db.execute_query("FIND ENTITY WITH ID > 99")
     if len(d) > 0:
         d.delete(flags={"forceFinalState": "true"})
+    admin.set_server_property("EXT_ENTITY_STATE",
+                              _ORIGINAL_EXT_ENTITY_STATE)
 
 
 def setup_module():
+    global _ORIGINAL_EXT_ENTITY_STATE
+    try:
+        _ORIGINAL_EXT_ENTITY_STATE = admin.get_server_property(
+            "EXT_ENTITY_STATE")
+    except KeyError:
+        pass
     teardown_module()
     db.RecordType("State").insert()
     db.RecordType("StateModel").insert()
@@ -55,10 +66,39 @@ def teardown():
 
 
 def setup():
+    admin.set_server_property("EXT_ENTITY_STATE", "ENABLED")
     teardown()
     db.RecordType("TestRT").insert()
 
 
+def test_plugin_disabled():
+    admin.set_server_property("EXT_ENTITY_STATE", "DISABLED")
+
+    rec = db.Record()
+    rec.add_parent("TestRT")
+    rec.state = db.State(model="Model1", name="State1")
+    assert rec.get_property("State") is None
+
+    rec_insert = rec.insert(sync=False)
+    assert rec_insert.get_property("State") is None
+    assert rec_insert.state == rec.state
+
+    # however, state was not stored
+    rec_retrieve = db.Record.retrieve(rec_insert.id)
+    assert rec_retrieve.get_property("State") is None
+    assert rec_retrieve.state is None
+
+    # also, properties are not interpreted as state
+    rec = db.Record()
+    rec.add_parent("TestRT")
+    rec.add_property("State", "State2")
+    rec_insert = rec.insert(sync=False)
+
+    rec_retrieve = db.Record.retrieve(rec_insert.id)
+    assert rec_retrieve.get_property("State").value is not None
+    assert rec_retrieve.state is None
+
+
 def test_state_message():
     rec = db.Record()
     rec.add_parent("TestRT")