code: def test_scale_spec_lims_all(spec, expected_x, expected_y):
      # print('---------')
      # print(expected_x)
      # print(expected_y)
      # print(spec.as_dict())
  
      if expected_x is None and expected_y is None:
          assert isinstance(spec, DummySpec)
      elif expected_x is None:
          _check({"aesthetic": "y", **expected_y}, spec.as_dict())
      elif expected_y is None:
          _check({"aesthetic": "x", **expected_x}, spec.as_dict())
      else:
          assert isinstance(spec, FeatureSpecArray)
          assert len(spec.elements()) == 2
  
          scale_x = spec.elements()[0]
          _check({"aesthetic": "x", **expected_x}, scale_x.as_dict())
  
          scale_y = spec.elements()[1]
          _check({"aesthetic": "y", **expected_y}, scale_y.as_dict())
  
file_path: lets-plot/python-package/test/plot/test_scale_convenience.py
imports: import pytest
  from lets_plot.plot.core import FeatureSpecArray, DummySpec
  from lets_plot.plot.scale_convenience import *
label_desc: Use image node_id 6 for calling a global function with example usage: test_scale_spec_lims_all(spec, expected_x, expected_y) without return types