This patch adds the unit and integration test suite for the pythonmaker tool. The test is orchestrated by a Python script and uses a "golden file" comparison method. It runs `pythonmaker` on a comprehensive test IDL and verifies that the generated `.pyi` output exactly matches a set of pre-validated reference stubs. The test is integrated into the build system and runs with 'make check'. Change-Id: If91814767779812740c543476307600f61c8a656 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188456 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
Language Code Generators for UNOIDL Entities
Generators for language-binding--specific representations of UNOIDL entities:
cppumakergenerates header (.hdland.hpp) files for the C++ UNO language bindingjavamakergenerates class files for the JVM language bindingnetmakergenerates C# code files for the .NET language bindingclimaker(the old codemaker for .NET Framework) is in modulecli_urepythonmakergenerates Python stub (pyi) files for the Python UNO language binding
Some of the code is re-used by the skeletonmakers in module unodevtools.
Note the different terminology used by cppumaker vs. gbuild for the three variants that can be generated by cppumaker for some of the inline functions:
cppumaker switch: -L; cpputype.cxx: light; gbuild: normal;
cppumaker switch: none; cpputype.cxx: normal; gbuild: bootstrap;
cppumaker switch: -C; cpputype.cxx: comprehensive; gbuild: comprehensive;
which can be a source of confusion.