diff options
| author | Rémy HUBSCHER <rhubscher@mozilla.com> | 2017-02-16 17:49:58 +0100 |
|---|---|---|
| committer | Rémy HUBSCHER <rhubscher@mozilla.com> | 2017-02-17 09:56:23 +0100 |
| commit | 0edf02b0452fe461570aec9fac34613e38deaad6 (patch) | |
| tree | 94066498fc380f0a39a76c535218f496cc754d61 | |
| parent | 107390374a40d5fff686ebb084d1d9da5fc07eb3 (diff) | |
| download | pyramid-0edf02b0452fe461570aec9fac34613e38deaad6.tar.gz pyramid-0edf02b0452fe461570aec9fac34613e38deaad6.tar.bz2 pyramid-0edf02b0452fe461570aec9fac34613e38deaad6.zip | |
Settings should not alter the initial dict.
| -rw-r--r-- | pyramid/config/settings.py | 1 | ||||
| -rw-r--r-- | pyramid/tests/test_config/test_settings.py | 6 |
2 files changed, 4 insertions, 3 deletions
diff --git a/pyramid/config/settings.py b/pyramid/config/settings.py index 26eb48951..52b30db81 100644 --- a/pyramid/config/settings.py +++ b/pyramid/config/settings.py @@ -56,6 +56,7 @@ def Settings(d=None, _environ_=os.environ, **kw): keyword args).""" if d is None: d = {} + d = dict(d) d.update(**kw) eget = _environ_.get diff --git a/pyramid/tests/test_config/test_settings.py b/pyramid/tests/test_config/test_settings.py index d6fb8de67..202629358 100644 --- a/pyramid/tests/test_config/test_settings.py +++ b/pyramid/tests/test_config/test_settings.py @@ -12,12 +12,12 @@ class TestSettingsConfiguratorMixin(unittest.TestCase): settings = config._set_settings(None) self.assertTrue(settings) - def test__set_settings_uses_original_dict(self): + def test__set_settings_does_not_uses_original_dict(self): config = self._makeOne() dummy = {} result = config._set_settings(dummy) - self.assertTrue(dummy is result) - self.assertEqual(dummy['pyramid.debug_all'], False) + self.assertTrue(dummy is not result) + self.assertNotIn('pyramid.debug_all', dummy) def test__set_settings_as_dictwithvalues(self): config = self._makeOne() |
