code: def assert_orderings(
      days_order, days_check, times_order, times_check
  ):
      symbol_sequence = [
          "circle",
          "diamond",
          "square",
          "cross",
          "circle",
          "diamond",
      ]
      color_sequence = [
          "red",
          "blue",
          "red",
          "blue",
          "red",
          "blue",
          "red",
          "blue",
      ]
      fig = px.scatter(
          px.data.tips(),
          x="total_bill",
          y="tip",
          facet_row="time",
          facet_col="day",
          color="time",
          symbol="day",
          symbol_sequence=symbol_sequence,
          color_discrete_sequence=color_sequence,
          category_orders=dict(day=days_order, time=times_order),
      )
  
      for col in range(len(days_check)):
          for trace in fig.select_traces(col=col + 1):
              assert days_check[col] in trace.hovertemplate
  
      for row in range(len(times_check)):
          for trace in fig.select_traces(row=len(times_check) - row):
              assert times_check[row] in trace.hovertemplate
  
      for trace in fig.data:
          for i, day in enumerate(days_check):
              if day in trace.name:
                  assert trace.marker.symbol == symbol_sequence[i]
          for i, time in enumerate(times_check):
              if time in trace.name:
                  assert trace.marker.color == color_sequence[i]
  
file_path: plotly.py/packages/python/plotly/plotly/tests/test_optional/test_px/test_px.py
imports: import plotly.express
  import plotly.io
  import numpy
  import pytest
  from itertools import permutations
label_desc: Use image node_id 7 for calling a global function with example usage: assert_orderings(days_order, days_check, times_order, times_check) without return types