code: def test_drop_na(crossed_data, caplog):
      crossed_data_missing = crossed_data.copy()
      crossed_data_missing.loc[0, "Y"] = np.nan
      crossed_data_missing.loc[1, "continuous"] = np.nan
      crossed_data_missing.loc[2, "threecats"] = np.nan
  
      with caplog.at_level(logging.INFO):
          bmb.Model(
              "Y ~ continuous + threecats",
              crossed_data_missing,
              dropna=True,
          )
          assert (
              "Automatically removing 3/120 rows from the dataset."
              in caplog.text
          )
  
      with pytest.raises(
          ValueError, match="'data' contains 3 incomplete rows"
      ):
          bmb.Model("Y ~ continuous + threecats", crossed_data_missing)
  
imports: import logging
  from functools import reduce
  from operator import add
  from os.path import dirname, join
  import arviz
  import numpy
  import pandas
  import pymc
  import pytest
  from formulae import design_matrices
  import bambi
  from bambi.terms import CommonTerm, GroupSpecificTerm
label_desc: Use image node_id 31 for calling a global function with example usage: test_drop_na(crossed_data, caplog) without return types