diff --git a/src/bindings/python/PyContext.cpp b/src/bindings/python/PyContext.cpp index 132f52a718..1456ef35a7 100644 --- a/src/bindings/python/PyContext.cpp +++ b/src/bindings/python/PyContext.cpp @@ -168,6 +168,8 @@ void bindPyContext(py::module & m) { return StringVarIterator(self); }) + .def("setStringVar", &Context::setStringVar, "name"_a, "value"_a, + DOC(Context, setStringVar)) .def("clearStringVars", &Context::clearStringVars, DOC(Context, clearStringVars)) .def("getEnvironmentMode", &Context::getEnvironmentMode, diff --git a/tests/python/ContextTest.py b/tests/python/ContextTest.py index 5cfc847fd8..2aaf95944c 100644 --- a/tests/python/ContextTest.py +++ b/tests/python/ContextTest.py @@ -47,6 +47,8 @@ def test_interface(self): cont['TEST1'] = 'foobar' self.assertEqual(len(cont), 2) self.assertEqual('/foo/foobar/bar', cont.resolveStringVar('/foo/${TEST1}/bar')) + cont.setStringVar('foo', 'bar') + self.assertEqual(len(cont), 3) cont.clearStringVars() self.assertEqual(len(cont), 0) self.assertEqual(OCIO.ENV_ENVIRONMENT_LOAD_PREDEFINED, cont.getEnvironmentMode())