2 # Copyright 2021 Canonical Ltd.
4 # Licensed under the Apache License, Version 2.0 (the "License"); you may
5 # not use this file except in compliance with the License. You may obtain
6 # a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13 # License for the specific language governing permissions and limitations
16 # For those usages not covered by the Apache License, Version 2.0 please
17 # contact: legal@canonical.com
19 # To get in touch with the maintainers, please contact:
20 # osm-charmers@lists.launchpad.net
24 import zaza
.model
as model
25 import requests
as http
29 def get_grafana_uri():
30 ip
= model
.get_status().applications
["grafana-k8s"]["public-address"]
32 return "http://{}:{}".format(ip
, port
)
35 class BasicDeployment(unittest
.TestCase
):
39 while not ready
and num_retries
< 5:
41 model
.get_status().applications
["grafana-k8s"]["status"]["status"]
49 def test_get_grafana_uri(self
):
52 def test_grafana_get_home(self
):
53 grafana_uri
= get_grafana_uri()
54 body
= http
.get("{}/api/dashboards/home".format(grafana_uri
))
55 self
.assertEqual(body
.status_code
, 401) # TODO: Get API Token
57 def test_grafana_get_tags(self
):
58 grafana_uri
= get_grafana_uri()
59 body
= http
.get("{}/api/dashboards/tags".format(grafana_uri
))
60 self
.assertEqual(body
.status_code
, 401) # TODO: Get API Token