/
test_issue_223.py
53 lines (44 loc) · 2.02 KB
/
test_issue_223.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# Copyright (c) 2019-2020, RTE (https://www.rte-france.com)
# See AUTHORS.txt
# This Source Code Form is subject to the terms of the Mozilla Public License, version 2.0.
# If a copy of the Mozilla Public License, version 2.0 was not distributed with this file,
# you can obtain one at http://mozilla.org/MPL/2.0/.
# SPDX-License-Identifier: MPL-2.0
# This file is part of Grid2Op, Grid2Op a testbed platform to model sequential decision making in power systems.
import warnings
import unittest
import grid2op
from grid2op.Chronics import ChangeNothing
from grid2op.tests.helper_path_test import *
try:
from grid2op.PlotGrid import PlotMatplot
CAN_PLOT = True
except ImportError as exc_:
CAN_PLOT = False
class Issue223Tester(unittest.TestCase):
def _skip_if_not_installed(self):
if not CAN_PLOT:
self.skipTest("matplotlib is not installed")
def reset_without_pp_futurewarnings(self):
with warnings.catch_warnings():
warnings.filterwarnings("ignore")
obs = self.env.reset()
return obs
def setUp(self) -> None:
if CAN_PLOT:
with warnings.catch_warnings():
warnings.filterwarnings("ignore")
env_nm = os.path.join(PATH_DATA_TEST, "5bus_modif_grid")
self.env = grid2op.make(env_nm, test=True, chronics_class=ChangeNothing, _add_to_name=type(self).__name__)
self.env.seed(0)
self.reset_without_pp_futurewarnings()
def test_env_working(self):
self._skip_if_not_installed()
with warnings.catch_warnings():
warnings.filterwarnings("error") # there should be no warning there
# in the issue, it crashes there
plot_helper = PlotMatplot(self.env.observation_space)
assert "sub_5" in plot_helper._grid_layout
assert "sub_6" in plot_helper._grid_layout
# now test i can plot an observation
fig = plot_helper.plot_obs(self.reset_without_pp_futurewarnings())