def do_plugins(self): from catkin_pkg.package import Export env = create_env() pkg = create_manifest("mock", run_depends=["other_catkin"]) plugin = Export("other_catkin") plugin.attributes = {"plugin": "${prefix}/config.xml"} pkg.exports += [plugin] result = mock_lint( env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([], result) result = mock_lint(env, pkg, "", checks=cc.plugins) self.assertEqual(["PLUGIN_MISSING_INSTALL"], result) result = mock_lint( env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION})", checks=cc.plugins) self.assertEqual(["PLUGIN_MISSING_INSTALL"], result) pkg = create_manifest("mock", run_depends=["other_catkin"]) plugin = Export("other_catkin") plugin.attributes = {"plugin": "config.xml"} pkg.exports += [plugin] result = mock_lint( env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual(["PLUGIN_EXPORT_PREFIX"], result) pkg = create_manifest("mock") plugin = Export("other_catkin") plugin.attributes = {"plugin": "${prefix}/config.xml"} pkg.exports += [plugin] result = mock_lint( env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual(["PLUGIN_DEPEND"], result) pkg = create_manifest("mock", run_depends=["other_catkin"]) plugin = Export("other_catkin") plugin.attributes = {"plugin": "${prefix}/missing_config.xml"} pkg.exports += [plugin] result = mock_lint( env, pkg, "install(FILES missing_config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual(["PLUGIN_MISSING_FILE"], result)
def do_plugins(self): from catkin_pkg.package import Export env = create_env() pkg = create_manifest("mock", run_depends=[ "other_catkin" ]) plugin = Export("other_catkin") plugin.attributes = { "plugin": "${prefix}/config.xml" } pkg.exports += [ plugin ] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([], result) result = mock_lint(env, pkg, "", checks=cc.plugins) self.assertEqual([ "PLUGIN_MISSING_INSTALL" ], result) result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION})", checks=cc.plugins) self.assertEqual([ "PLUGIN_MISSING_INSTALL" ], result) pkg = create_manifest("mock", run_depends=[ "other_catkin" ]) plugin = Export("other_catkin") plugin.attributes = { "plugin": "config.xml" } pkg.exports += [ plugin ] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([ "PLUGIN_EXPORT_PREFIX" ], result) pkg = create_manifest("mock") plugin = Export("other_catkin") plugin.attributes = { "plugin": "${prefix}/config.xml" } pkg.exports += [ plugin ] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([ "PLUGIN_DEPEND" ], result) pkg = create_manifest("mock", run_depends=[ "other_catkin" ]) plugin = Export("other_catkin") plugin.attributes = { "plugin": "${prefix}/missing_config.xml" } pkg.exports += [ plugin ] result = mock_lint(env, pkg, "install(FILES missing_config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([ "PLUGIN_MISSING_FILE" ], result)
def convert_manifest_export(man_export): e = Export(man_export.tag, man_export.str) e.attributes = man_export.attrs return e