code: def test_bad_serialized_data() -> None:
      assert type(loads(dumps(DataclassC(ints=[3, 4])))) == DataclassC
      assert (
          type(loads('{"ints": [3, 4]}', backwards_compatible=False))
          == dict
      )
      assert (
          type(
              loads('{"ints": [3, 4], "dataclass_name": "DataclassC"}')
          )
          == DataclassC
      )
      with pytest.raises(TypeError):
          loads(
              '{"ints": [3, 4], "bogus_extra_field": "foo", "dataclass_name": "DataclassC"}'
          )
      with pytest.raises(TypeError):
          loads(
              '{"ints_field_is_missing": [3, 4], "dataclass_name": "DataclassC"}'
          )
      assert (
          type(loads('{"s1": "test"}', backwards_compatible=False))
          == dict
      )
      assert (
          type(loads('{"s1": "test"}', backwards_compatible=True))
          == DataclassD
      )
  
file_path: automated-interpretability/neuron-explainer/neuron_explainer/fast_dataclasses/test_fast_dataclasses.py
imports: from dataclasses import dataclass
  import pytest
  from .fast_dataclasses import FastDataclass, dumps, loads, register_dataclass
label_desc: Use image node_id 3 for calling a global function with example usage: test_bad_serialized_data() without return types