コード例 #1
0
ファイル: test_formatting.py プロジェクト: dcherian/xarray
def test__mapping_repr(display_max_rows, n_vars, n_attr) -> None:
    long_name = "long_name"
    a = defchararray.add(long_name, np.arange(0, n_vars).astype(str))
    b = defchararray.add("attr_", np.arange(0, n_attr).astype(str))
    c = defchararray.add("coord", np.arange(0, n_vars).astype(str))
    attrs = {k: 2 for k in b}
    coords = {_c: np.array([0, 1]) for _c in c}
    data_vars = dict()
    for (v, _c) in zip(a, coords.items()):
        data_vars[v] = xr.DataArray(
            name=v,
            data=np.array([3, 4]),
            dims=[_c[0]],
            coords=dict([_c]),
        )
    ds = xr.Dataset(data_vars)
    ds.attrs = attrs

    with xr.set_options(display_max_rows=display_max_rows):

        # Parse the data_vars print and show only data_vars rows:
        summary = formatting.dataset_repr(ds).split("\n")
        summary = [v for v in summary if long_name in v]
        # The length should be less than or equal to display_max_rows:
        len_summary = len(summary)
        data_vars_print_size = min(display_max_rows, len_summary)
        assert len_summary == data_vars_print_size

        summary = formatting.data_vars_repr(ds.data_vars).split("\n")
        summary = [v for v in summary if long_name in v]
        # The length should be equal to the number of data variables
        len_summary = len(summary)
        assert len_summary == n_vars

        summary = formatting.coords_repr(ds.coords).split("\n")
        summary = [v for v in summary if "coord" in v]
        # The length should be equal to the number of data variables
        len_summary = len(summary)
        assert len_summary == n_vars

    with xr.set_options(
            display_max_rows=display_max_rows,
            display_expand_coords=False,
            display_expand_data_vars=False,
            display_expand_attrs=False,
    ):
        actual = formatting.dataset_repr(ds)
        col_width = formatting._calculate_col_width(ds.variables)
        dims_start = formatting.pretty_print("Dimensions:", col_width)
        dims_values = formatting.dim_summary_limited(ds,
                                                     col_width=col_width + 1,
                                                     max_rows=display_max_rows)
        expected = f"""\
<xarray.Dataset>
{dims_start}({dims_values})
Coordinates: ({n_vars})
Data variables: ({n_vars})
Attributes: ({n_attr})"""
        expected = dedent(expected)
        assert actual == expected
コード例 #2
0
 def test_pretty_print(self):
     assert formatting.pretty_print('abcdefghij', 8) == 'abcde...'
     assert formatting.pretty_print('ß', 1) == 'ß'
コード例 #3
0
 def test_pretty_print(self):
     self.assertEqual(formatting.pretty_print('abcdefghij', 8), 'abcde...')
     self.assertEqual(formatting.pretty_print(u'ß', 1), u'ß')
コード例 #4
0
 def test_pretty_print(self):
     assert formatting.pretty_print("abcdefghij", 8) == "abcde..."
     assert formatting.pretty_print("ß", 1) == "ß"
コード例 #5
0
ファイル: test_formatting.py プロジェクト: CCI-Tools/xarray
 def test_pretty_print(self):
     self.assertEqual(formatting.pretty_print('abcdefghij', 8), 'abcde...')
     self.assertEqual(formatting.pretty_print(u'ß', 1), u'ß')
コード例 #6
0
ファイル: test_formatting.py プロジェクト: benbovy/xarray
 def test_pretty_print(self):
     assert formatting.pretty_print('abcdefghij', 8) == 'abcde...'
     assert formatting.pretty_print(u'ß', 1) == u'ß'