dbc7be3bcefeb50857c515929c0f3391d38e2ad5
[osm/devops.git] / installers / charm / pla / tests / test_charm.py
1 #!/usr/bin/env python3
2 # Copyright 2020 Canonical Ltd.
3 #
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
7 #
8 # http://www.apache.org/licenses/LICENSE-2.0
9 #
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
14 # under the License.
15 #
16 # For those usages not covered by the Apache License, Version 2.0 please
17 # contact: legal@canonical.com
18 #
19 # To get in touch with the maintainers, please contact:
20 # osm-charmers@lists.launchpad.net
21 ##
22
23 from typing import NoReturn
24 import unittest
25
26 from ops.testing import Harness
27
28 from charm import PLACharm
29
30
31 class TestCharm(unittest.TestCase):
32 """PLA Charm unit tests."""
33
34 def setUp(self) -> NoReturn:
35 """Test setup"""
36 self.harness = Harness(PLACharm)
37 self.harness.set_leader(is_leader=True)
38 self.harness.begin()
39
40 def test_on_start_without_relations(self) -> NoReturn:
41 """Test installation without any relation."""
42 self.harness.charm.on.config_changed.emit()
43
44
45 if __name__ == "__main__":
46 unittest.main()