code: def test_empty_col_error(self):
      root = Scope({})
      with self.assertRaises(errors.ScopeCollectionNotFound):
          root.param("test", nn.initializers.zeros_init(), ())
      root = Scope({"params": {}})
      with self.assertRaises(errors.ScopeCollectionNotFound):
          root.param("test", nn.initializers.zeros_init(), ())
  
      root = Scope({"params": {"abc": 1}})
      with self.assertRaises(errors.ScopeCollectionNotFound):
          root.variable("state", "test", jnp.zeros, ())
      root = Scope({"state": {}})
      with self.assertRaises(errors.ScopeCollectionNotFound):
          root.variable("state", "test", jnp.zeros, ())
  
imports: import jax
  import numpy
  from absl.testing import absltest
  from jax import numpy
  from jax import random
  from flax import errors
  from flax.configurations import temp_flip_flag
  from flax.core import Scope, apply, freeze, init, lazy_init, nn, scope
  from flax.core.scope import LazyRng
label_desc: Use image node_id 16 for calling the ScopeTest obj's underlying member method code with example usage: obj.test_empty_col_error() without return types