Skip to content

Migrate Figure.basemap tests to dvc #1096

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 12 commits into from
Apr 1, 2021
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed pygmt/tests/baseline/test_basemap.png
Binary file not shown.
4 changes: 4 additions & 0 deletions pygmt/tests/baseline/test_basemap.png.dvc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
outs:
- md5: 61986bbf1ea20c418cbce50456d1d4f7
size: 9281
path: test_basemap.png
Binary file removed pygmt/tests/baseline/test_basemap_list_region.png
Binary file not shown.
Binary file removed pygmt/tests/baseline/test_basemap_loglog.png
Binary file not shown.
4 changes: 4 additions & 0 deletions pygmt/tests/baseline/test_basemap_loglog.png.dvc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
outs:
- md5: 04df0757105b810a647f545f4f7371fb
size: 28235
path: test_basemap_loglog.png
Binary file removed pygmt/tests/baseline/test_basemap_polar.png
Binary file not shown.
4 changes: 4 additions & 0 deletions pygmt/tests/baseline/test_basemap_polar.png.dvc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
outs:
- md5: 7326eb42c54c6300a634f0723664fb39
size: 33205
path: test_basemap_polar.png
Binary file removed pygmt/tests/baseline/test_basemap_power_axis.png
Binary file not shown.
4 changes: 4 additions & 0 deletions pygmt/tests/baseline/test_basemap_power_axis.png.dvc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
outs:
- md5: 6d9dd0086ab8226f180c6aae5ec3e4a6
size: 31288
path: test_basemap_power_axis.png
4 changes: 4 additions & 0 deletions pygmt/tests/baseline/test_basemap_winkel_tripel.png.dvc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
outs:
- md5: d0d2c680e9e6e1b546566d9aa2aaf830
size: 70487
path: test_basemap_winkel_tripel.png
90 changes: 18 additions & 72 deletions pygmt/tests/test_basemap.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,18 @@
"""
Tests fig.basemap.
Tests Figure.basemap.
"""
import pytest
from pygmt import Figure
from pygmt.exceptions import GMTInvalidInput
from pygmt.helpers.testing import check_figures_equal


def test_basemap_required_args():
"""
fig.basemap fails when not given required arguments.
Figure.basemap fails when not given required arguments.
"""
fig = Figure()
with pytest.raises(GMTInvalidInput):
fig.basemap(R="10/70/-3/8", J="X4i/3i")
fig.basemap(region=[10, 70, -3, 8], projection="X8c/6c")


@pytest.mark.mpl_image_compare
Expand All @@ -22,17 +21,7 @@ def test_basemap():
Create a simple basemap plot.
"""
fig = Figure()
fig.basemap(R="10/70/-3/8", J="X4i/3i", B="afg")
return fig


@pytest.mark.mpl_image_compare
def test_basemap_list_region():
"""
Create a simple basemap plot passing the region as a list.
"""
fig = Figure()
fig.basemap(R=[-20, 50, 200, 500], J="X3i/3i", B="a")
fig.basemap(region=[10, 70, -3, 8], projection="X8c/6c", frame="afg")
return fig


Expand All @@ -43,11 +32,9 @@ def test_basemap_loglog():
"""
fig = Figure()
fig.basemap(
R="1/10000/1e20/1e25",
J="X25cl/15cl",
Bx="2+lWavelength",
By="a1pf3+lPower",
B="WS",
region=[1, 10000, 1e20, 1e25],
projection="X16cl/12cl",
frame=["WS", "x2+lWavelength", "ya1pf3+lPower"],
)
return fig

Expand All @@ -59,69 +46,28 @@ def test_basemap_power_axis():
"""
fig = Figure()
fig.basemap(
R=[0, 100, 0, 5000], J="x1p0.5/-0.001", B=['x1p+l"Crustal age"', "y500+lDepth"]
region=[0, 100, 0, 5000],
projection="x1p0.5/-0.001",
frame=['x1p+l"Crustal age"', "y500+lDepth"],
)
return fig


@check_figures_equal()
@pytest.mark.mpl_image_compare
def test_basemap_polar():
"""
Create a polar basemap plot.
"""
fig_ref, fig_test = Figure(), Figure()
# Use single-character arguments for the reference image
fig_ref.basemap(R="0/360/0/1000", J="P6i", B="afg")
fig_test.basemap(region=[0, 360, 0, 1000], projection="P6i", frame="afg")

return fig_ref, fig_test
fig = Figure()
fig.basemap(region=[0, 360, 0, 1000], projection="P8c", frame="afg")
return fig


@check_figures_equal()
@pytest.mark.mpl_image_compare
def test_basemap_winkel_tripel():
"""
Create a Winkel Tripel basemap plot.
"""
fig_ref, fig_test = Figure(), Figure()
fig_ref.basemap(R="90/450/-90/90", J="R270/25c", B="afg")
fig_test.basemap(region=[90, 450, -90, 90], projection="R270/25c", frame="afg")
return fig_ref, fig_test


@check_figures_equal()
def test_basemap_rose():
"""
Create a map with coast and use basemap to add a rose.
"""
fig_ref, fig_test = Figure(), Figure()
fig_ref.coast(R="127.5/128.5/26/27", W="1/0.5p")
fig_ref.basemap(Td="jBR+w5c")
fig_test.coast(region=[127.5, 128.5, 26, 27], shorelines="1/0.5p")
fig_test.basemap(rose="jBR+w5c")
return fig_ref, fig_test


@check_figures_equal()
def test_basemap_compass():
"""
Create a map with coast and use basemap to add a compass.
"""
fig_ref, fig_test = Figure(), Figure()
fig_ref.coast(R="127.5/128.5/26/27", W="1/0.5p")
fig_ref.basemap(Tm="jBR+w5c+d11.5")
fig_test.coast(region=[127.5, 128.5, 26, 27], shorelines="1/0.5p")
fig_test.basemap(compass="jBR+w5c+d11.5")
return fig_ref, fig_test


@check_figures_equal()
def test_basemap_map_scale():
"""
Create a map with coast and use basemap to add a map scale.
"""
fig_ref, fig_test = Figure(), Figure()
fig_ref.coast(R="127.5/128.5/26/27", W="1/0.5p")
fig_ref.basemap(L="jMB+c1+w10k+l+f")
fig_test.coast(region=[127.5, 128.5, 26, 27], shorelines="1/0.5p")
fig_test.basemap(map_scale="jMB+c1+w10k+f+l")
return fig_ref, fig_test
fig = Figure()
fig.basemap(region=[90, 450, -90, 90], projection="R270/20c", frame="afg")
return fig