Revert "Integrate MON and Grafana"
[osm/devops.git] / installers / charm / osm-mon / tests / unit / test_charm.py
index 2d16cd8..33598fe 100644 (file)
@@ -30,7 +30,6 @@ from charm import CharmError, OsmMonCharm, check_service_active
 
 container_name = "mon"
 service_name = "mon"
-url_configs = ["grafana-url", "prometheus-url"]
 
 
 @pytest.fixture
@@ -43,83 +42,21 @@ def harness(mocker: MockerFixture):
     harness.cleanup()
 
 
-def _set_mandatory_config(harness: Harness):
-    harness.update_config(
-        {
-            "grafana-url": "http://grafana:1234",
-            "grafana-user": "user",
-            "grafana-password": "password",
-            "prometheus-url": "http://someurl",
-        }
-    )
-
-
-def test_default_config_is_invalid_charm_is_blocked(harness: Harness):
-    harness.charm.on.config_changed.emit()
-    assert isinstance(harness.charm.unit.status, BlockedStatus)
-    assert (
-        "need grafana-url, grafana-user, grafana-password, prometheus-url config"
-        == harness.charm.unit.status.message
-    )
-
-
 def test_missing_relations(harness: Harness):
-    _set_mandatory_config(harness)
     harness.charm.on.config_changed.emit()
-    assert isinstance(harness.charm.unit.status, BlockedStatus)
+    assert type(harness.charm.unit.status) == BlockedStatus
     assert all(
         relation in harness.charm.unit.status.message
         for relation in ["mongodb", "kafka", "prometheus", "keystone"]
     )
 
 
-@pytest.mark.parametrize("config_param", url_configs)
-def test_url_config_without_schema_block_status(harness: Harness, config_param):
-    _set_mandatory_config(harness)
-    _add_relations(harness)
-    harness.update_config({config_param: "foo.com"})
-    assert isinstance(harness.charm.unit.status, BlockedStatus)
-    assert (
-        f"Invalid value for {config_param} config: 'foo.com'" in harness.charm.unit.status.message
-    )
-
-
-@pytest.mark.parametrize("config_param", url_configs)
-def test_url_config_with_port_without_schema_block_status(harness: Harness, config_param):
-    _set_mandatory_config(harness)
-    _add_relations(harness)
-    harness.update_config({config_param: "foo.com:9090"})
-    assert isinstance(harness.charm.unit.status, BlockedStatus)
-    assert (
-        f"Invalid value for {config_param} config: 'foo.com:9090'"
-        in harness.charm.unit.status.message
-    )
-
-
-@pytest.mark.parametrize("config_param", url_configs)
-def test_url_config_without_port_is_valid(harness: Harness, config_param):
-    _set_mandatory_config(harness)
-    _add_relations(harness)
-    harness.update_config({config_param: "http://foo"})
-    assert harness.charm.unit.status == ActiveStatus()
-
-
-@pytest.mark.parametrize("config_param", url_configs)
-def test_url_config_with_port_is_valid(harness: Harness, config_param):
-    _set_mandatory_config(harness)
-    _add_relations(harness)
-    harness.update_config({config_param: "http://foo:90"})
-    assert harness.charm.unit.status == ActiveStatus()
-
-
 def test_ready(harness: Harness):
-    _set_mandatory_config(harness)
     _add_relations(harness)
     assert harness.charm.unit.status == ActiveStatus()
 
 
 def test_container_stops_after_relation_broken(harness: Harness):
-    _set_mandatory_config(harness)
     harness.charm.on[container_name].pebble_ready.emit(container_name)
     container = harness.charm.unit.get_container(container_name)
     relation_ids = _add_relations(harness)
@@ -146,7 +83,11 @@ def _add_relations(harness: Harness):
     harness.update_relation_data(relation_id, "kafka", {"host": "kafka", "port": "9092"})
     relation_ids.append(relation_id)
     # Add prometheus relation
-    relation_id = harness.add_relation("metrics-endpoint", "prometheus")
+    relation_id = harness.add_relation("prometheus", "prometheus")
+    harness.add_relation_unit(relation_id, "prometheus/0")
+    harness.update_relation_data(
+        relation_id, "prometheus", {"hostname": "prometheus", "port": "9090"}
+    )
     relation_ids.append(relation_id)
     # Add keystone relation
     relation_id = harness.add_relation("keystone", "keystone")