浏览代码

support/testing: add test for python-munch

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Yegor Yefremov 2 年之前
父节点
当前提交
2f0a2a43bb
共有 3 个文件被更改,包括 34 次插入0 次删除
  1. 2 0
      DEVELOPERS
  2. 20 0
      support/testing/tests/package/sample_python_munch.py
  3. 12 0
      support/testing/tests/package/test_python_munch.py

+ 2 - 0
DEVELOPERS

@@ -3133,10 +3133,12 @@ F:	package/x11r7/xapp_xinput-calibrator/
 F:	package/zlog/
 F:	support/testing/tests/package/sample_python_dicttoxml2.py
 F:	support/testing/tests/package/sample_python_dtschema.py
+F:	support/testing/tests/package/sample_python_munch.py
 F:	support/testing/tests/package/test_libftdi1.py
 F:	support/testing/tests/package/test_python_can.py
 F:	support/testing/tests/package/test_python_dicttoxml2.py
 F:	support/testing/tests/package/test_python_dtschema.py
+F:	support/testing/tests/package/test_python_munch.py
 F:	utils/scanpypi
 
 N:	Yunhao Tian <t123yh.xyz@gmail.com>

+ 20 - 0
support/testing/tests/package/sample_python_munch.py

@@ -0,0 +1,20 @@
+from munch import Munch
+
+b = Munch()
+b.hello = 'world'
+assert b.hello == 'world'
+b['hello'] += "!"
+assert b.hello == 'world!'
+b.foo = Munch(lol=True)
+assert b.foo.lol is True
+assert b.foo is b['foo']
+
+assert sorted(b.keys()) == ['foo', 'hello']
+
+b.update({'ponies': 'are pretty!'}, hello=42)
+assert b == Munch({'ponies': 'are pretty!', 'foo': Munch({'lol': True}), 'hello': 42})
+
+assert sorted([(k, b[k]) for k in b]) == [('foo', Munch({'lol': True})), ('hello', 42), ('ponies', 'are pretty!')]
+
+format_munch = Munch(knights='lolcats', ni='can haz')
+assert "The {knights} who say {ni}!".format(**format_munch) == 'The lolcats who say can haz!'

+ 12 - 0
support/testing/tests/package/test_python_munch.py

@@ -0,0 +1,12 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy3Munch(TestPythonPackageBase):
+    __test__ = True
+    config = TestPythonPackageBase.config + \
+        """
+        BR2_PACKAGE_PYTHON3=y
+        BR2_PACKAGE_PYTHON_MUNCH=y
+        """
+    sample_scripts = ["tests/package/sample_python_munch.py"]
+    timeout = 40