def METHOD_NAME(self):
    # Test parameter sharing
    with scope.NameScope('global_scope'):
        with ParameterSharing({'model_b': 'model_a'}):
            param_global = parameter_sharing_context.get_parameter_name('w')
            self.assertEqual(param_global, 'global_scope/w')
            # This scope is overridden to match 'model_a'
            with scope.NameScope('model_b'):
                with ParameterSharing({'shared_scope': ''}):
                    param_4 = parameter_sharing_context.get_parameter_name(
                        'w')
                    self.assertEqual(param_4, 'global_scope/model_a/w')
                    with scope.NameScope('shared_scope'):
                        param_5 = parameter_sharing_context.\
                            get_parameter_name('w')
                        self.assertEqual(param_5, 'global_scope/model_a/w')
            # This scope is supposed to have not sharing
            with scope.NameScope('model_c'):
                with ParameterSharing({'shared_scope': ''}):
                    param_4 = parameter_sharing_context.get_parameter_name(
                        'w')
                    self.assertEqual(param_4, 'global_scope/model_c/w')
                    with scope.NameScope('shared_scope'):
                        param_5 = parameter_sharing_context.\
                            get_parameter_name('w')
                        self.assertEqual(param_5, 'global_scope/model_c/w')