From 1805c47ddb4d26c2660859e8a11143308ee89cbc Mon Sep 17 00:00:00 2001 From: ayushjariyal Date: Sat, 7 Feb 2026 12:52:47 +0530 Subject: [PATCH 1/5] Adding test for get_region and get_location_proj_string in utils.py file --- python/grass/jupyter/tests/utils_test.py | 30 ++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 python/grass/jupyter/tests/utils_test.py diff --git a/python/grass/jupyter/tests/utils_test.py b/python/grass/jupyter/tests/utils_test.py new file mode 100644 index 00000000000..8b1c53f9565 --- /dev/null +++ b/python/grass/jupyter/tests/utils_test.py @@ -0,0 +1,30 @@ +"""Test Utils funcitons""" + +from pathlib import Path + +import pytest +from unittest.mock import patch + +import grass.jupyter as gj +from grass.jupyter.utils import get_region, get_location_proj_string + +IPython = pytest.importorskip("IPython", reason="IPython package not available") +ipywidgets = pytest.importorskip( + "ipywidgets", reason="ipywidgets package not available" +) + +def test_get_region(): + """Test that get_region returns currnt computational region as dictionary.""" + region = get_region() + assert isinstance(region, dict) + assert "north" in region + assert "south" in region + assert "east" in region + assert "west" in region + +def test_get_location_proj_string(): + """Test that get_location_proj_string returns projection of environment in PROJ.4 format""" + projection = get_location_proj_string() + assert isinstance(projection, str) + assert projection != "" + assert "+proj=" in projection \ No newline at end of file From 23413473fa4006931ca4da287035b44761176f9d Mon Sep 17 00:00:00 2001 From: ayushjariyal Date: Sat, 7 Feb 2026 13:01:13 +0530 Subject: [PATCH 2/5] ruff format --- python/grass/jupyter/tests/utils_test.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/python/grass/jupyter/tests/utils_test.py b/python/grass/jupyter/tests/utils_test.py index 8b1c53f9565..9050bcb38a1 100644 --- a/python/grass/jupyter/tests/utils_test.py +++ b/python/grass/jupyter/tests/utils_test.py @@ -13,6 +13,7 @@ "ipywidgets", reason="ipywidgets package not available" ) + def test_get_region(): """Test that get_region returns currnt computational region as dictionary.""" region = get_region() @@ -22,9 +23,10 @@ def test_get_region(): assert "east" in region assert "west" in region + def test_get_location_proj_string(): """Test that get_location_proj_string returns projection of environment in PROJ.4 format""" projection = get_location_proj_string() assert isinstance(projection, str) assert projection != "" - assert "+proj=" in projection \ No newline at end of file + assert "+proj=" in projection From b23cea674a239076ab26800a32a26d04ef946e12 Mon Sep 17 00:00:00 2001 From: ayushjariyal Date: Sat, 7 Feb 2026 13:04:05 +0530 Subject: [PATCH 3/5] remove unwanted imports --- python/grass/jupyter/tests/utils_test.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/python/grass/jupyter/tests/utils_test.py b/python/grass/jupyter/tests/utils_test.py index 9050bcb38a1..221a1c81895 100644 --- a/python/grass/jupyter/tests/utils_test.py +++ b/python/grass/jupyter/tests/utils_test.py @@ -1,11 +1,7 @@ """Test Utils funcitons""" -from pathlib import Path - import pytest -from unittest.mock import patch -import grass.jupyter as gj from grass.jupyter.utils import get_region, get_location_proj_string IPython = pytest.importorskip("IPython", reason="IPython package not available") From 013c154f5626d03a5d22a60a186e072dcecc1631 Mon Sep 17 00:00:00 2001 From: ayushjariyal Date: Sat, 7 Feb 2026 13:29:32 +0530 Subject: [PATCH 4/5] change file name --- .../grass/jupyter/tests/{utils_test.py => jupyter_utils_test.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename python/grass/jupyter/tests/{utils_test.py => jupyter_utils_test.py} (100%) diff --git a/python/grass/jupyter/tests/utils_test.py b/python/grass/jupyter/tests/jupyter_utils_test.py similarity index 100% rename from python/grass/jupyter/tests/utils_test.py rename to python/grass/jupyter/tests/jupyter_utils_test.py From 5893a18a10c61f6f7b097dbdd3416864688681c1 Mon Sep 17 00:00:00 2001 From: ayushjariyal Date: Mon, 9 Feb 2026 12:28:44 +0530 Subject: [PATCH 5/5] fix test to use projected location for assertions --- python/grass/jupyter/tests/jupyter_utils_test.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/python/grass/jupyter/tests/jupyter_utils_test.py b/python/grass/jupyter/tests/jupyter_utils_test.py index 221a1c81895..0dc569cb252 100644 --- a/python/grass/jupyter/tests/jupyter_utils_test.py +++ b/python/grass/jupyter/tests/jupyter_utils_test.py @@ -10,7 +10,7 @@ ) -def test_get_region(): +def test_get_region(session): """Test that get_region returns currnt computational region as dictionary.""" region = get_region() assert isinstance(region, dict) @@ -20,9 +20,8 @@ def test_get_region(): assert "west" in region -def test_get_location_proj_string(): +def test_get_location_proj_string(simple_dataset): """Test that get_location_proj_string returns projection of environment in PROJ.4 format""" projection = get_location_proj_string() assert isinstance(projection, str) - assert projection != "" assert "+proj=" in projection