diff options
| author | Christoph Reiter <reiter.christoph@gmail.com> | 2019-01-19 13:43:28 +0100 |
|---|---|---|
| committer | Christoph Reiter <reiter.christoph@gmail.com> | 2019-01-19 13:43:28 +0100 |
| commit | b66e964ec1b27d5786d2e2276d18764df6a06e6c (patch) | |
| tree | 1a4f802740e6694b68fbc949b6d34a273c1213e4 | |
| parent | 6c69fc7b582ec1fd3faef4de3fade9a0cb7f8c05 (diff) | |
| download | pygobject-b66e964ec1b27d5786d2e2276d18764df6a06e6c.tar.gz | |
Value.set_value: allow None for TYPE_STRING
set_string() allows it too
| -rw-r--r-- | gi/overrides/GObject.py | 4 | ||||
| -rw-r--r-- | tests/test_overrides_gobject.py | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/gi/overrides/GObject.py b/gi/overrides/GObject.py index 04b5be65..20a92b0e 100644 --- a/gi/overrides/GObject.py +++ b/gi/overrides/GObject.py @@ -258,8 +258,8 @@ class Value(GObjectModule.Value): elif gtype == TYPE_DOUBLE: self.set_double(py_value) elif gtype == TYPE_STRING: - if isinstance(py_value, str): - py_value = str(py_value) + if py_value is None or isinstance(py_value, str): + py_value = py_value elif PY2: if isinstance(py_value, text_type): py_value = py_value.encode('UTF-8') diff --git a/tests/test_overrides_gobject.py b/tests/test_overrides_gobject.py index 47759b41..e62a27fd 100644 --- a/tests/test_overrides_gobject.py +++ b/tests/test_overrides_gobject.py @@ -222,8 +222,8 @@ def test_value_string(): assert v.get_value() == u"quux" assert isinstance(v.get_value(), str) - with pytest.raises(TypeError): - v.set_value(None) + v.set_value(None) + assert v.get_value() is None def test_value_pyobject(): |
