code: def test_fails_on_unused_config_updates(ex):
      @ex.config
      def cfg():
          a = 1
          c = 3
  
      @ex.main
      def foo(a, b=2):
          return a + b
  
      # normal config updates work
      assert ex.run(config_updates={"a": 3}).result == 5
      # not in config but used works
      assert ex.run(config_updates={"b": 8}).result == 9
      # unused but in config updates work
      assert ex.run(config_updates={"c": 9}).result == 3
  
      # unused config updates raise
      with pytest.raises(ConfigAddedError):
          ex.run(config_updates={"d": 3})
  
imports: from sacred import Ingredient
  from mock import patch
  import pytest
  import sys
  from sacred import cli_option
  from sacred import host_info_gatherer
  from sacred.experiment import Experiment
  from sacred.utils import apply_backspaces_and_linefeeds, ConfigAddedError, SacredError
label_desc: Use image node_id 5 for calling a global function with example usage: test_fails_on_unused_config_updates(ex) and returns: unknown