code: def test_add_config_dict_chain(ex):
      @ex.config
      def config1():
          """This is my demo configuration"""
          dictnest_cap = {"key_1": "value_1", "key_2": "value_2"}
  
      @ex.config
      def config2():
          """This is my demo configuration"""
          dictnest_cap = {
              "key_2": "update_value_2",
              "key_3": "value3",
              "key_4": "value4",
          }
  
      adict = {
          "dictnest_dict": {"key_1": "value_1", "key_2": "value_2"}
      }
      ex.add_config(adict)
  
      bdict = {
          "dictnest_dict": {
              "key_2": "update_value_2",
              "key_3": "value3",
              "key_4": "value4",
          }
      }
      ex.add_config(bdict)
  
      @ex.automain
      def run():
          pass
  
      final_config = ex.run().config
      assert final_config["dictnest_cap"] == {
          "key_1": "value_1",
          "key_2": "update_value_2",
          "key_3": "value3",
          "key_4": "value4",
      }
      assert (
          final_config["dictnest_cap"] == final_config["dictnest_dict"]
      )
  
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 21 for calling a global function with example usage: test_add_config_dict_chain(ex) without return types