changeset 5:f934215bdb78 draft default tip

planemo upload for repository https://github.com/brsynth commit 6ae809b563b40bcdb6be2e74fe2a84ddad5484ae
author tduigou
date Mon, 02 Jun 2025 10:29:28 +0000
parents c7a7520afb4b
children
files output.html output.json save_to_db.py save_to_db.xml test-data/test-JSON_arg.json test-data/test-JSON_arg_block.json
diffstat 6 files changed, 251 insertions(+), 35 deletions(-) [+]
line wrap: on
line diff
--- a/output.html	Mon Jun 02 09:48:14 2025 +0000
+++ b/output.html	Mon Jun 02 10:29:28 2025 +0000
@@ -285,7 +285,7 @@
         var md = window.markdownit({
           html: true,
         });
-        target.innerHTML = md.render(atob('IyMgVGVzdCBTdW1tYXJ5Cgo8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci1zdWNjZXNzIiBzdHlsZT0id2lkdGg6IDEwMC4wJSIgYXJpYS12YWx1ZW5vdz0iMSIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iMSIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHRpdGxlPSIxIFBhc3NlZCI+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci13YXJuaW5nIiBzdHlsZT0id2lkdGg6IDAuMCUiIGFyaWEtdmFsdWVub3c9IjAiIGFyaWEtdmFsdWVtaW49IjAiIGFyaWEtdmFsdWVtYXg9IjEiIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiB0aXRsZT0iMCBTa2lwcGVkIj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgcHJvZ3Jlc3MtYmFyLWRhbmdlciIgc3R5bGU9IndpZHRoOiAwLjAlIiBhcmlhLXZhbHVlbm93PSIwIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIxIiB0aXRsZT0iMCBGYWlsZWQgb3IgRXJyb3JlZCI+CiAgPC9kaXY+CjwvZGl2PgoKfCBUZXN0IFN0YXRlIHwgQ291bnQgfAp8IC0tLS0tLS0tLS0gfCAtLS0tLSB8CnwgVG90YWwgICAgICB8IDEgfAp8IFBhc3NlZCAgICAgfCAxIHwKfCBFcnJvciAgICAgIHwgMCB8CnwgRmFpbHVyZSAgICB8IDAgfAp8IFNraXBwZWQgICAgfCAwIHwKCgo8ZGV0YWlscyA+PHN1bW1hcnk+UGFzc2VkIFRlc3RzPC9zdW1tYXJ5PgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBzYXZlX3RvX2RiIChUZXN0ICMgMSk8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBweXRob24gJy9ob21lL3JraGFsZWQvZ2FsYXh5dG9vbHMvdG9vbHMvc2F2ZV90b19kYi9zYXZlX3RvX2RiLnB5JyAtLWlucHV0ICcvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzLzMvMC9mL2RhdGFzZXRfMzBmYzIwMTctNjYyMC00YTgwLWE2MGUtMGM3OTVjODlmMTA2LmRhdCwvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzL2IvZi9iL2RhdGFzZXRfYmZiNTQzMjEtOGFkMC00ZTQyLWIzMDctZjMyZTQ3ZTA2MThhLmRhdCwvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzLzEvZS81L2RhdGFzZXRfMWU1YTBkODAtZGM5ZS00MmQwLWIwZTEtYzJlNzhhZmYxOGQzLmRhdCwvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzL2EvYi9hL2RhdGFzZXRfYWJhOGQ1YjQtYTRmMy00NDg3LTgwM2MtYmU1ZGVlMTQ0NWNkLmRhdCwvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzLzcvYi83L2RhdGFzZXRfN2I3ZmI3MGYtZGEwYy00NWU3LWJhNGUtMGU4Y2I4ZDMxOTY4LmRhdCcgLS1zZXF1ZW5jZV9jb2x1bW4gJycgLS1hbm5vdGF0aW9uX2NvbHVtbiAnJyAtLWRiX3VyaSAnJyAtLXRhYmxlICcnIC0tZnJhZ21lbnRfY29sdW1uICcnIC0tb3V0cHV0ICcvdG1wL3RtcHhjdDl4NzB4L2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvNy9vdXRwdXRzL2RhdGFzZXRfNDFiODQ0YWItNWE4NS00NmNkLTgzNjctN2FkMWZiZWU3ZDNjLmRhdCcgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXB4Y3Q5eDcweC9maWxlcy8zLzAvZi9kYXRhc2V0XzMwZmMyMDE3LTY2MjAtNGE4MC1hNjBlLTBjNzk1Yzg5ZjEwNi5kYXQ6cDdfTDdBZS1XZWlzcy5nYiwvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzL2IvZi9iL2RhdGFzZXRfYmZiNTQzMjEtOGFkMC00ZTQyLWIzMDctZjMyZTQ3ZTA2MThhLmRhdDpwNl9OdC1JZ0tMc2VxdWVuY2UuZ2IsL3RtcC90bXB4Y3Q5eDcweC9maWxlcy8xL2UvNS9kYXRhc2V0XzFlNWEwZDgwLWRjOWUtNDJkMC1iMGUxLWMyZTc4YWZmMThkMy5kYXQ6cDZfS296YWstQVRHLmdiLC90bXAvdG1weGN0OXg3MHgvZmlsZXMvYS9iL2EvZGF0YXNldF9hYmE4ZDViNC1hNGYzLTQ0ODctODAzYy1iZTVkZWUxNDQ1Y2QuZGF0OnA0X0t0LUw3QWUtV2Vpc3MuZ2IsL3RtcC90bXB4Y3Q5eDcweC9maWxlcy83L2IvNy9kYXRhc2V0XzdiN2ZiNzBmLWRhMGMtNDVlNy1iYTRlLTBlOGNiOGQzMTk2OC5kYXQ6SENfQW1wX2NjZEIuZ2InIC0tanNvbl9jb25mICcvdG1wL3RtcHhjdDl4NzB4L2ZpbGVzL2YvNC9mL2RhdGFzZXRfZjRmZDU5ZTgtZjhkNi00YmUyLThiMDAtOWUxMmNhODMxOWVmLmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgQ29udGFpbmVyICd0ZXN0X2ZyYWdtZW50c19kYicgaXMgYWxyZWFkeSBydW5uaW5nLgogICAgICBDb25uZWN0ZWQgdG8gZGF0YWJhc2UuCiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF8zMGZjMjAxNy02NjIwLTRhODAtYTYwZS0wYzc5NWM4OWYxMDYuZGF0CiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF9iZmI1NDMyMS04YWQwLTRlNDItYjMwNy1mMzJlNDdlMDYxOGEuZGF0CiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF8xZTVhMGQ4MC1kYzllLTQyZDAtYjBlMS1jMmU3OGFmZjE4ZDMuZGF0CiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF9hYmE4ZDViNC1hNGYzLTQ0ODctODAzYy1iZTVkZWUxNDQ1Y2QuZGF0CiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF83YjdmYjcwZi1kYTBjLTQ1ZTctYmE0ZS0wZThjYjhkMzE5NjguZGF0CiAgICAgIEluc2VydGVkIDUgZnJhZ21lbnRzLgogICAgICBGcmFnbWVudCBuYW1lcyB3cml0dGVuIHRvICcvdG1wL3RtcHhjdDl4NzB4L2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvNy9vdXRwdXRzL2RhdGFzZXRfNDFiODQ0YWItNWE4NS00NmNkLTgzNjctN2FkMWZiZWU3ZDNjLmRhdCcuCgogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBnZW5iYW5rXF9maWxlcyB8IGAgeyJ2YWx1ZXMiOiBbeyJpZCI6IDEsICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IHRhYmxlIHwgYCBOb25lIGAgfAogICAgICAgfCBzZXF1ZW5jZVxfY29sdW1uIHwgYCBOb25lIGAgfAogICAgICAgfCBhbm5vdGF0aW9uXF9jb2x1bW4gfCBgIE5vbmUgYCB8CiAgICAgICB8IGZyYWdtZW50XF9jb2x1bW4gfCBgIE5vbmUgYCB8CiAgICAgICB8IGRiXF91cmkgfCBgIE5vbmUgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJqc29uX2NvbmYiOiB7InZhbHVlcyI6IFt7ImlkIjogNiwgInNyYyI6ICJoZGEifV19fSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXB4Y3Q5eDcweC9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCjwvZGV0YWlscz4K'));
+        target.innerHTML = md.render(atob('IyMgVGVzdCBTdW1tYXJ5Cgo8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci1zdWNjZXNzIiBzdHlsZT0id2lkdGg6IDUwLjAlIiBhcmlhLXZhbHVlbm93PSIxIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIyIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgdGl0bGU9IjEgUGFzc2VkIj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgcHJvZ3Jlc3MtYmFyLXdhcm5pbmciIHN0eWxlPSJ3aWR0aDogMC4wJSIgYXJpYS12YWx1ZW5vdz0iMCIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iMiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHRpdGxlPSIwIFNraXBwZWQiPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InByb2dyZXNzLWJhciBwcm9ncmVzcy1iYXItZGFuZ2VyIiBzdHlsZT0id2lkdGg6IDUwLjAlIiBhcmlhLXZhbHVlbm93PSIxIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIyIiB0aXRsZT0iMSBGYWlsZWQgb3IgRXJyb3JlZCI+CiAgPC9kaXY+CjwvZGl2PgoKfCBUZXN0IFN0YXRlIHwgQ291bnQgfAp8IC0tLS0tLS0tLS0gfCAtLS0tLSB8CnwgVG90YWwgICAgICB8IDIgfAp8IFBhc3NlZCAgICAgfCAxIHwKfCBFcnJvciAgICAgIHwgMCB8CnwgRmFpbHVyZSAgICB8IDEgfAp8IFNraXBwZWQgICAgfCAwIHwKCgo8ZGV0YWlscyBvcGVuPjxzdW1tYXJ5PkZhaWxlZCBUZXN0czwvc3VtbWFyeT4KCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LXJlZCI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LXJlZCI+JiMxMDA2MDsgc2F2ZV90b19kYiAoVGVzdCAjIDEpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipQcm9ibGVtcyoqOgogICAgKiBgYGAKICAgICAgT3V0cHV0IG91dHB1dDogIGRpZmZlcmVudCB0aGFuIGV4cGVjdGVkCiAgICAgIEV4cGVjdGVkIDUrLTAgbGluZXMgaW4gdGhlIG91dHB1dCBmb3VuZCAwCiAgICAgIGBgYAogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgcHl0aG9uICcvaG9tZS9ya2hhbGVkL2dhbGF4eXRvb2xzL3Rvb2xzL3NhdmVfdG9fZGIvc2F2ZV90b19kYi5weScgLS1pbnB1dCAnL3RtcC90bXBnZmU4bWRtdy9maWxlcy9hLzUvYS9kYXRhc2V0X2E1YTU2YTVjLTU3M2EtNGIzNC04Yzk4LTI3YjJlZGZmNTRmMy5kYXQsL3RtcC90bXBnZmU4bWRtdy9maWxlcy8xLzcvNy9kYXRhc2V0XzE3NzliZmIzLWZmMzEtNGI2ZC04YzZmLTgyMTcyYzk4N2ZlZS5kYXQsL3RtcC90bXBnZmU4bWRtdy9maWxlcy80L2MvYy9kYXRhc2V0XzRjYzgzMDU2LWU3YjctNGRjZC05MzYwLWNkZTJiYzE5NzhmMS5kYXQsL3RtcC90bXBnZmU4bWRtdy9maWxlcy85LzYvOS9kYXRhc2V0Xzk2OWI3YjM1LTRmMDUtNDhiYy05MmY1LTRlMmY1Y2UzNzVjYS5kYXQsL3RtcC90bXBnZmU4bWRtdy9maWxlcy83L2IvNC9kYXRhc2V0XzdiNDdmNDZiLTNlMDAtNGE2NS05YzlhLTZhMjVlM2MzMGIwNC5kYXQnIC0tc2VxdWVuY2VfY29sdW1uICcnIC0tYW5ub3RhdGlvbl9jb2x1bW4gJycgLS1kYl91cmkgJycgLS10YWJsZSAnJyAtLWZyYWdtZW50X2NvbHVtbiAnJyAtLW91dHB1dCAnL3RtcC90bXBnZmU4bWRtdy9qb2Jfd29ya2luZ19kaXJlY3RvcnkvMDAwLzcvb3V0cHV0cy9kYXRhc2V0Xzg5ZjJmM2Y0LTA0YTAtNDk5OC1hM2Y2LWQwNjViOWUxZjM2NS5kYXQnIC0tZmlsZV9uYW1lX21hcHBpbmcgJy90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvYS81L2EvZGF0YXNldF9hNWE1NmE1Yy01NzNhLTRiMzQtOGM5OC0yN2IyZWRmZjU0ZjMuZGF0OnA3X0w3QWUtV2Vpc3MuZ2IsL3RtcC90bXBnZmU4bWRtdy9maWxlcy8xLzcvNy9kYXRhc2V0XzE3NzliZmIzLWZmMzEtNGI2ZC04YzZmLTgyMTcyYzk4N2ZlZS5kYXQ6cDZfTnQtSWdLTHNlcXVlbmNlLmdiLC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvNC9jL2MvZGF0YXNldF80Y2M4MzA1Ni1lN2I3LTRkY2QtOTM2MC1jZGUyYmMxOTc4ZjEuZGF0OnA2X0tvemFrLUFURy5nYiwvdG1wL3RtcGdmZThtZG13L2ZpbGVzLzkvNi85L2RhdGFzZXRfOTY5YjdiMzUtNGYwNS00OGJjLTkyZjUtNGUyZjVjZTM3NWNhLmRhdDpwNF9LdC1MN0FlLVdlaXNzLmdiLC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvNy9iLzQvZGF0YXNldF83YjQ3ZjQ2Yi0zZTAwLTRhNjUtOWM5YS02YTI1ZTNjMzBiMDQuZGF0OkhDX0FtcF9jY2RCLmdiJyAtLWpzb25fY29uZiAnL3RtcC90bXBnZmU4bWRtdy9maWxlcy9iLzMvZS9kYXRhc2V0X2IzZTNhOTViLWRkODQtNDFkZS1iNTNiLWVhNDRkMDM0ZTExYi5kYXQnCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgT3V0cHV0OioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIEV4ZWN1dGlvbiB3YXMgYmxvY2tlZCBieSBjb25maWcgKGV4ZWN1dGlvbiA9IGZhbHNlKQoKICAgICAgYGBgCiAgICAqKlRyYWNlYmFjazoqKgoKICAgICogYGBgY29uc29sZQogICAgICAKICAgICAgYGBgCiAgICoqSm9iIFBhcmFtZXRlcnM6KioKCiAgICogICB8IEpvYiBwYXJhbWV0ZXIgfCBQYXJhbWV0ZXIgdmFsdWUgfAogICAgICAgfCAtLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tIHwKICAgICAgIHwgZ2VuYmFua1xfZmlsZXMgfCBgIHsidmFsdWVzIjogW3siaWQiOiAxLCAic3JjIjogImhkY2EifV19IGAgfAogICAgICAgfCB0YWJsZSB8IGAgTm9uZSBgIHwKICAgICAgIHwgc2VxdWVuY2VcX2NvbHVtbiB8IGAgTm9uZSBgIHwKICAgICAgIHwgYW5ub3RhdGlvblxfY29sdW1uIHwgYCBOb25lIGAgfAogICAgICAgfCBmcmFnbWVudFxfY29sdW1uIHwgYCBOb25lIGAgfAogICAgICAgfCBkYlxfdXJpIHwgYCBOb25lIGAgfAogICAgICAgfCBhZHYgfCBgIHsianNvbl9jb25mIjogeyJ2YWx1ZXMiOiBbeyJpZCI6IDYsICJzcmMiOiAiaGRhIn1dfX0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1wZ2ZlOG1kbXcvZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgo8L2RldGFpbHM+CjxkZXRhaWxzID48c3VtbWFyeT5QYXNzZWQgVGVzdHM8L3N1bW1hcnk+CgoqIDxkZXRhaWxzIGNsYXNzPSJyY29ybmVycyBsaWdodC1ncmVlbiI+PHN1bW1hcnkgY2xhc3M9ImxpZ2h0LWdyZWVuIj4mIzk5ODk7IHNhdmVfdG9fZGIgKFRlc3QgIyAyKTwvc3VtbWFyeT48ZGl2IGNsYXNzPSJwYWRkZWQiPgoKICAgICoqQ29tbWFuZCBMaW5lOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIHB5dGhvbiAnL2hvbWUvcmtoYWxlZC9nYWxheHl0b29scy90b29scy9zYXZlX3RvX2RiL3NhdmVfdG9fZGIucHknIC0taW5wdXQgJy90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvMy82LzIvZGF0YXNldF8zNjJiY2M1Ny0zYjdlLTQwODktYjljNy0zMzE1NTQ5OGQzNTIuZGF0LC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvNC9lLzAvZGF0YXNldF80ZTAzYmFlYS1mZDdjLTQ1YjMtYjgwOC00NDQzYWRjNjBmOTEuZGF0LC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvNi9kL2EvZGF0YXNldF82ZGE5MDE1OC1jMDJkLTQ1N2UtODkwOC01NmI1MzJiNGIzYzIuZGF0LC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvOC8wL2IvZGF0YXNldF84MGI2NGQyNi1iMGIyLTQwZGYtYWQ5Yi00MTQ0NmMxNzI3MDUuZGF0LC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvMy84LzcvZGF0YXNldF8zODc1MTAwMC00OTUzLTQ0YmItYjE0Mi04MWI0YmM0MWFkOTcuZGF0JyAtLXNlcXVlbmNlX2NvbHVtbiAnJyAtLWFubm90YXRpb25fY29sdW1uICcnIC0tZGJfdXJpICcnIC0tdGFibGUgJycgLS1mcmFnbWVudF9jb2x1bW4gJycgLS1vdXRwdXQgJy90bXAvdG1wZ2ZlOG1kbXcvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8xNC9vdXRwdXRzL2RhdGFzZXRfZWU0MzA3MmYtNjYxZC00N2UwLWIzMGYtZDkwNWFhYzM3YTRhLmRhdCcgLS1maWxlX25hbWVfbWFwcGluZyAnL3RtcC90bXBnZmU4bWRtdy9maWxlcy8zLzYvMi9kYXRhc2V0XzM2MmJjYzU3LTNiN2UtNDA4OS1iOWM3LTMzMTU1NDk4ZDM1Mi5kYXQ6cDdfTDdBZS1XZWlzcy5nYiwvdG1wL3RtcGdmZThtZG13L2ZpbGVzLzQvZS8wL2RhdGFzZXRfNGUwM2JhZWEtZmQ3Yy00NWIzLWI4MDgtNDQ0M2FkYzYwZjkxLmRhdDpwNl9OdC1JZ0tMc2VxdWVuY2UuZ2IsL3RtcC90bXBnZmU4bWRtdy9maWxlcy82L2QvYS9kYXRhc2V0XzZkYTkwMTU4LWMwMmQtNDU3ZS04OTA4LTU2YjUzMmI0YjNjMi5kYXQ6cDZfS296YWstQVRHLmdiLC90bXAvdG1wZ2ZlOG1kbXcvZmlsZXMvOC8wL2IvZGF0YXNldF84MGI2NGQyNi1iMGIyLTQwZGYtYWQ5Yi00MTQ0NmMxNzI3MDUuZGF0OnA0X0t0LUw3QWUtV2Vpc3MuZ2IsL3RtcC90bXBnZmU4bWRtdy9maWxlcy8zLzgvNy9kYXRhc2V0XzM4NzUxMDAwLTQ5NTMtNDRiYi1iMTQyLTgxYjRiYzQxYWQ5Ny5kYXQ6SENfQW1wX2NjZEIuZ2InIC0tanNvbl9jb25mICcvdG1wL3RtcGdmZThtZG13L2ZpbGVzLzgvMy9kL2RhdGFzZXRfODNkZGQ5ODYtNWEwNy00MDZlLTkxZjgtZmNjNDAzYTZlOTI3LmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgQ29udGFpbmVyICd0ZXN0X2ZyYWdtZW50c19kYicgaXMgYWxyZWFkeSBydW5uaW5nLgogICAgICBDb25uZWN0ZWQgdG8gZGF0YWJhc2UuCiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF8zNjJiY2M1Ny0zYjdlLTQwODktYjljNy0zMzE1NTQ5OGQzNTIuZGF0KHA3X0w3QWUtV2Vpc3MpCiAgICAgIFByb2Nlc3NpbmcgZmlsZTogZGF0YXNldF80ZTAzYmFlYS1mZDdjLTQ1YjMtYjgwOC00NDQzYWRjNjBmOTEuZGF0KHA2X050LUlnS0xzZXF1ZW5jZSkKICAgICAgUHJvY2Vzc2luZyBmaWxlOiBkYXRhc2V0XzZkYTkwMTU4LWMwMmQtNDU3ZS04OTA4LTU2YjUzMmI0YjNjMi5kYXQocDZfS296YWstQVRHKQogICAgICBQcm9jZXNzaW5nIGZpbGU6IGRhdGFzZXRfODBiNjRkMjYtYjBiMi00MGRmLWFkOWItNDE0NDZjMTcyNzA1LmRhdChwNF9LdC1MN0FlLVdlaXNzKQogICAgICBQcm9jZXNzaW5nIGZpbGU6IGRhdGFzZXRfMzg3NTEwMDAtNDk1My00NGJiLWIxNDItODFiNGJjNDFhZDk3LmRhdChIQ19BbXBfY2NkQikKICAgICAgSW5zZXJ0ZWQgNSBmcmFnbWVudHMuCiAgICAgIEZyYWdtZW50IG5hbWVzIHdyaXR0ZW4gdG8gJy90bXAvdG1wZ2ZlOG1kbXcvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8xNC9vdXRwdXRzL2RhdGFzZXRfZWU0MzA3MmYtNjYxZC00N2UwLWIzMGYtZDkwNWFhYzM3YTRhLmRhdCcuCgogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBnZW5iYW5rXF9maWxlcyB8IGAgeyJ2YWx1ZXMiOiBbeyJpZCI6IDIsICJzcmMiOiAiaGRjYSJ9XX0gYCB8CiAgICAgICB8IHRhYmxlIHwgYCBOb25lIGAgfAogICAgICAgfCBzZXF1ZW5jZVxfY29sdW1uIHwgYCBOb25lIGAgfAogICAgICAgfCBhbm5vdGF0aW9uXF9jb2x1bW4gfCBgIE5vbmUgYCB8CiAgICAgICB8IGZyYWdtZW50XF9jb2x1bW4gfCBgIE5vbmUgYCB8CiAgICAgICB8IGRiXF91cmkgfCBgIE5vbmUgYCB8CiAgICAgICB8IGFkdiB8IGAgeyJqc29uX2NvbmYiOiB7InZhbHVlcyI6IFt7ImlkIjogMTMsICJzcmMiOiAiaGRhIn1dfX0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1wZ2ZlOG1kbXcvZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgo8L2RldGFpbHM+Cg=='));
     </script>
   </body>
 </html>
\ No newline at end of file
--- a/output.json	Mon Jun 02 09:48:14 2025 +0000
+++ b/output.json	Mon Jun 02 10:29:28 2025 +0000
@@ -1,65 +1,65 @@
 {
     "summary": {
         "num_errors": 0,
-        "num_failures": 0,
+        "num_failures": 1,
         "num_skips": 0,
-        "num_tests": 1
+        "num_tests": 2
     },
     "tests": [
         {
             "data": {
                 "inputs": {
                     "adv|json_conf": {
-                        "id": "1895a93fdf3c72e9",
+                        "id": "c9e99bc7539b08e5",
                         "src": "hda"
                     },
                     "genbank_files": {
-                        "id": "c0d7a43ba58f94b5",
+                        "id": "c804608f95de6282",
                         "src": "hdca"
                     }
                 },
                 "job": {
-                    "command_line": "python '/home/rkhaled/galaxytools/tools/save_to_db/save_to_db.py' --input '/tmp/tmpxct9x70x/files/3/0/f/dataset_30fc2017-6620-4a80-a60e-0c795c89f106.dat,/tmp/tmpxct9x70x/files/b/f/b/dataset_bfb54321-8ad0-4e42-b307-f32e47e0618a.dat,/tmp/tmpxct9x70x/files/1/e/5/dataset_1e5a0d80-dc9e-42d0-b0e1-c2e78aff18d3.dat,/tmp/tmpxct9x70x/files/a/b/a/dataset_aba8d5b4-a4f3-4487-803c-be5dee1445cd.dat,/tmp/tmpxct9x70x/files/7/b/7/dataset_7b7fb70f-da0c-45e7-ba4e-0e8cb8d31968.dat' --sequence_column '' --annotation_column '' --db_uri '' --table '' --fragment_column '' --output '/tmp/tmpxct9x70x/job_working_directory/000/7/outputs/dataset_41b844ab-5a85-46cd-8367-7ad1fbee7d3c.dat' --file_name_mapping '/tmp/tmpxct9x70x/files/3/0/f/dataset_30fc2017-6620-4a80-a60e-0c795c89f106.dat:p7_L7Ae-Weiss.gb,/tmp/tmpxct9x70x/files/b/f/b/dataset_bfb54321-8ad0-4e42-b307-f32e47e0618a.dat:p6_Nt-IgKLsequence.gb,/tmp/tmpxct9x70x/files/1/e/5/dataset_1e5a0d80-dc9e-42d0-b0e1-c2e78aff18d3.dat:p6_Kozak-ATG.gb,/tmp/tmpxct9x70x/files/a/b/a/dataset_aba8d5b4-a4f3-4487-803c-be5dee1445cd.dat:p4_Kt-L7Ae-Weiss.gb,/tmp/tmpxct9x70x/files/7/b/7/dataset_7b7fb70f-da0c-45e7-ba4e-0e8cb8d31968.dat:HC_Amp_ccdB.gb' --json_conf '/tmp/tmpxct9x70x/files/f/4/f/dataset_f4fd59e8-f8d6-4be2-8b00-9e12ca8319ef.dat'",
+                    "command_line": "python '/home/rkhaled/galaxytools/tools/save_to_db/save_to_db.py' --input '/tmp/tmpgfe8mdmw/files/a/5/a/dataset_a5a56a5c-573a-4b34-8c98-27b2edff54f3.dat,/tmp/tmpgfe8mdmw/files/1/7/7/dataset_1779bfb3-ff31-4b6d-8c6f-82172c987fee.dat,/tmp/tmpgfe8mdmw/files/4/c/c/dataset_4cc83056-e7b7-4dcd-9360-cde2bc1978f1.dat,/tmp/tmpgfe8mdmw/files/9/6/9/dataset_969b7b35-4f05-48bc-92f5-4e2f5ce375ca.dat,/tmp/tmpgfe8mdmw/files/7/b/4/dataset_7b47f46b-3e00-4a65-9c9a-6a25e3c30b04.dat' --sequence_column '' --annotation_column '' --db_uri '' --table '' --fragment_column '' --output '/tmp/tmpgfe8mdmw/job_working_directory/000/7/outputs/dataset_89f2f3f4-04a0-4998-a3f6-d065b9e1f365.dat' --file_name_mapping '/tmp/tmpgfe8mdmw/files/a/5/a/dataset_a5a56a5c-573a-4b34-8c98-27b2edff54f3.dat:p7_L7Ae-Weiss.gb,/tmp/tmpgfe8mdmw/files/1/7/7/dataset_1779bfb3-ff31-4b6d-8c6f-82172c987fee.dat:p6_Nt-IgKLsequence.gb,/tmp/tmpgfe8mdmw/files/4/c/c/dataset_4cc83056-e7b7-4dcd-9360-cde2bc1978f1.dat:p6_Kozak-ATG.gb,/tmp/tmpgfe8mdmw/files/9/6/9/dataset_969b7b35-4f05-48bc-92f5-4e2f5ce375ca.dat:p4_Kt-L7Ae-Weiss.gb,/tmp/tmpgfe8mdmw/files/7/b/4/dataset_7b47f46b-3e00-4a65-9c9a-6a25e3c30b04.dat:HC_Amp_ccdB.gb' --json_conf '/tmp/tmpgfe8mdmw/files/b/3/e/dataset_b3e3a95b-dd84-41de-b53b-ea44d034e11b.dat'",
                     "command_version": "",
                     "copied_from_job_id": null,
-                    "create_time": "2025-06-02T09:46:35.368351",
+                    "create_time": "2025-06-02T10:25:46.744304",
                     "dependencies": [],
                     "exit_code": 0,
-                    "external_id": "129989",
+                    "external_id": "148807",
                     "galaxy_version": "24.2",
                     "handler": null,
-                    "history_id": "c0d7a43ba58f94b5",
-                    "id": "92e9df4c7abf24ab",
+                    "history_id": "c804608f95de6282",
+                    "id": "91a273dde5f46de6",
                     "inputs": {
                         "adv|json_conf": {
-                            "id": "1895a93fdf3c72e9",
+                            "id": "c9e99bc7539b08e5",
                             "src": "hda",
-                            "uuid": "f4fd59e8-f8d6-4be2-8b00-9e12ca8319ef"
+                            "uuid": "b3e3a95b-dd84-41de-b53b-ea44d034e11b"
                         },
                         "genbank_files1": {
-                            "id": "c0d7a43ba58f94b5",
+                            "id": "c804608f95de6282",
                             "src": "hda",
-                            "uuid": "30fc2017-6620-4a80-a60e-0c795c89f106"
+                            "uuid": "a5a56a5c-573a-4b34-8c98-27b2edff54f3"
                         },
                         "genbank_files2": {
-                            "id": "1e3e46a5cbeec338",
+                            "id": "dc78a71e9d46a610",
                             "src": "hda",
-                            "uuid": "bfb54321-8ad0-4e42-b307-f32e47e0618a"
+                            "uuid": "1779bfb3-ff31-4b6d-8c6f-82172c987fee"
                         },
                         "genbank_files3": {
-                            "id": "81fab13a93a3da95",
+                            "id": "32d06e9182be9fe5",
                             "src": "hda",
-                            "uuid": "1e5a0d80-dc9e-42d0-b0e1-c2e78aff18d3"
+                            "uuid": "4cc83056-e7b7-4dcd-9360-cde2bc1978f1"
                         },
                         "genbank_files4": {
-                            "id": "a9ff23755d49e4b6",
+                            "id": "a50e356be1f2db6f",
                             "src": "hda",
-                            "uuid": "aba8d5b4-a4f3-4487-803c-be5dee1445cd"
+                            "uuid": "969b7b35-4f05-48bc-92f5-4e2f5ce375ca"
                         },
                         "genbank_files5": {
-                            "id": "2ca788c708559c16",
+                            "id": "64d80998680b05e1",
                             "src": "hda",
-                            "uuid": "7b7fb70f-da0c-45e7-ba4e-0e8cb8d31968"
+                            "uuid": "7b47f46b-3e00-4a65-9c9a-6a25e3c30b04"
                         }
                     },
                     "job_messages": [],
@@ -71,16 +71,16 @@
                     "output_collections": {},
                     "outputs": {
                         "output": {
-                            "id": "92e9df4c7abf24ab",
+                            "id": "91a273dde5f46de6",
                             "src": "hda",
-                            "uuid": "41b844ab-5a85-46cd-8367-7ad1fbee7d3c"
+                            "uuid": "89f2f3f4-04a0-4998-a3f6-d065b9e1f365"
                         }
                     },
                     "params": {
                         "__input_ext": "\"input\"",
                         "adv": "{\"json_conf\": {\"values\": [{\"id\": 6, \"src\": \"hda\"}]}}",
                         "annotation_column": null,
-                        "chromInfo": "\"/tmp/tmpxct9x70x/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
+                        "chromInfo": "\"/tmp/tmpgfe8mdmw/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
                         "db_uri": null,
                         "dbkey": "\"?\"",
                         "fragment_column": null,
@@ -90,22 +90,193 @@
                     },
                     "state": "ok",
                     "stderr": "",
-                    "stdout": "Container 'test_fragments_db' is already running.\nConnected to database.\nProcessing file: dataset_30fc2017-6620-4a80-a60e-0c795c89f106.dat\nProcessing file: dataset_bfb54321-8ad0-4e42-b307-f32e47e0618a.dat\nProcessing file: dataset_1e5a0d80-dc9e-42d0-b0e1-c2e78aff18d3.dat\nProcessing file: dataset_aba8d5b4-a4f3-4487-803c-be5dee1445cd.dat\nProcessing file: dataset_7b7fb70f-da0c-45e7-ba4e-0e8cb8d31968.dat\nInserted 5 fragments.\nFragment names written to '/tmp/tmpxct9x70x/job_working_directory/000/7/outputs/dataset_41b844ab-5a85-46cd-8367-7ad1fbee7d3c.dat'.\n",
+                    "stdout": "Execution was blocked by config (execution = false)\n",
                     "tool_id": "save_to_db",
                     "tool_stderr": "",
-                    "tool_stdout": "Container 'test_fragments_db' is already running.\nConnected to database.\nProcessing file: dataset_30fc2017-6620-4a80-a60e-0c795c89f106.dat\nProcessing file: dataset_bfb54321-8ad0-4e42-b307-f32e47e0618a.dat\nProcessing file: dataset_1e5a0d80-dc9e-42d0-b0e1-c2e78aff18d3.dat\nProcessing file: dataset_aba8d5b4-a4f3-4487-803c-be5dee1445cd.dat\nProcessing file: dataset_7b7fb70f-da0c-45e7-ba4e-0e8cb8d31968.dat\nInserted 5 fragments.\nFragment names written to '/tmp/tmpxct9x70x/job_working_directory/000/7/outputs/dataset_41b844ab-5a85-46cd-8367-7ad1fbee7d3c.dat'.\n",
-                    "update_time": "2025-06-02T09:46:41.929779",
+                    "tool_stdout": "Execution was blocked by config (execution = false)\n",
+                    "update_time": "2025-06-02T10:25:54.228017",
                     "user_email": "planemo@galaxyproject.org",
-                    "user_id": "c0d7a43ba58f94b5"
+                    "user_id": "c804608f95de6282"
                 },
-                "status": "success",
+                "output_problems": [
+                    "Output output:  different than expected\nExpected 5+-0 lines in the output found 0"
+                ],
+                "status": "failure",
                 "test_index": 0,
-                "time_seconds": 29.02011752128601,
+                "time_seconds": 28.49768567085266,
                 "tool_id": "save_to_db",
-                "tool_version": "0.1.0+galaxy1"
+                "tool_version": "0.2.0+galaxy2"
             },
             "has_data": true,
             "id": "save_to_db-0"
+        },
+        {
+            "data": {
+                "inputs": {
+                    "adv|json_conf": {
+                        "id": "ba5e0bd88cc3030c",
+                        "src": "hda"
+                    },
+                    "genbank_files": {
+                        "id": "dc78a71e9d46a610",
+                        "src": "hdca"
+                    }
+                },
+                "job": {
+                    "command_line": "python '/home/rkhaled/galaxytools/tools/save_to_db/save_to_db.py' --input '/tmp/tmpgfe8mdmw/files/3/6/2/dataset_362bcc57-3b7e-4089-b9c7-33155498d352.dat,/tmp/tmpgfe8mdmw/files/4/e/0/dataset_4e03baea-fd7c-45b3-b808-4443adc60f91.dat,/tmp/tmpgfe8mdmw/files/6/d/a/dataset_6da90158-c02d-457e-8908-56b532b4b3c2.dat,/tmp/tmpgfe8mdmw/files/8/0/b/dataset_80b64d26-b0b2-40df-ad9b-41446c172705.dat,/tmp/tmpgfe8mdmw/files/3/8/7/dataset_38751000-4953-44bb-b142-81b4bc41ad97.dat' --sequence_column '' --annotation_column '' --db_uri '' --table '' --fragment_column '' --output '/tmp/tmpgfe8mdmw/job_working_directory/000/14/outputs/dataset_ee43072f-661d-47e0-b30f-d905aac37a4a.dat' --file_name_mapping '/tmp/tmpgfe8mdmw/files/3/6/2/dataset_362bcc57-3b7e-4089-b9c7-33155498d352.dat:p7_L7Ae-Weiss.gb,/tmp/tmpgfe8mdmw/files/4/e/0/dataset_4e03baea-fd7c-45b3-b808-4443adc60f91.dat:p6_Nt-IgKLsequence.gb,/tmp/tmpgfe8mdmw/files/6/d/a/dataset_6da90158-c02d-457e-8908-56b532b4b3c2.dat:p6_Kozak-ATG.gb,/tmp/tmpgfe8mdmw/files/8/0/b/dataset_80b64d26-b0b2-40df-ad9b-41446c172705.dat:p4_Kt-L7Ae-Weiss.gb,/tmp/tmpgfe8mdmw/files/3/8/7/dataset_38751000-4953-44bb-b142-81b4bc41ad97.dat:HC_Amp_ccdB.gb' --json_conf '/tmp/tmpgfe8mdmw/files/8/3/d/dataset_83ddd986-5a07-406e-91f8-fcc403a6e927.dat'",
+                    "command_version": "",
+                    "copied_from_job_id": null,
+                    "create_time": "2025-06-02T10:26:14.771419",
+                    "dependencies": [
+                        {
+                            "cacheable": false,
+                            "dependency_resolver": {
+                                "auto_init": true,
+                                "auto_install": true,
+                                "can_uninstall_dependencies": true,
+                                "ensure_channels": "conda-forge,bioconda",
+                                "model_class": "CondaDependencyResolver",
+                                "prefix": "/home/rkhaled/miniconda3",
+                                "read_only": false,
+                                "resolver_type": "conda",
+                                "resolves_simple_dependencies": true,
+                                "use_local": false,
+                                "versionless": false
+                            },
+                            "dependency_type": "conda",
+                            "environment_path": "/home/rkhaled/miniconda3/envs/mulled-v1-6494927f0d17ef089d943514f10e32b6b4b401affaea78704675d8f812704966",
+                            "exact": true,
+                            "model_class": "MergedCondaDependency",
+                            "name": "pandas",
+                            "version": "2.2.3"
+                        },
+                        {
+                            "cacheable": false,
+                            "dependency_resolver": {
+                                "auto_init": true,
+                                "auto_install": true,
+                                "can_uninstall_dependencies": true,
+                                "ensure_channels": "conda-forge,bioconda",
+                                "model_class": "CondaDependencyResolver",
+                                "prefix": "/home/rkhaled/miniconda3",
+                                "read_only": false,
+                                "resolver_type": "conda",
+                                "resolves_simple_dependencies": true,
+                                "use_local": false,
+                                "versionless": false
+                            },
+                            "dependency_type": "conda",
+                            "environment_path": "/home/rkhaled/miniconda3/envs/mulled-v1-6494927f0d17ef089d943514f10e32b6b4b401affaea78704675d8f812704966",
+                            "exact": true,
+                            "model_class": "MergedCondaDependency",
+                            "name": "sqlalchemy",
+                            "version": "2.0.40"
+                        },
+                        {
+                            "cacheable": false,
+                            "dependency_resolver": {
+                                "auto_init": true,
+                                "auto_install": true,
+                                "can_uninstall_dependencies": true,
+                                "ensure_channels": "conda-forge,bioconda",
+                                "model_class": "CondaDependencyResolver",
+                                "prefix": "/home/rkhaled/miniconda3",
+                                "read_only": false,
+                                "resolver_type": "conda",
+                                "resolves_simple_dependencies": true,
+                                "use_local": false,
+                                "versionless": false
+                            },
+                            "dependency_type": "conda",
+                            "environment_path": "/home/rkhaled/miniconda3/envs/mulled-v1-6494927f0d17ef089d943514f10e32b6b4b401affaea78704675d8f812704966",
+                            "exact": true,
+                            "model_class": "MergedCondaDependency",
+                            "name": "psycopg2",
+                            "version": "2.9.9"
+                        }
+                    ],
+                    "exit_code": 0,
+                    "external_id": "149308",
+                    "galaxy_version": "24.2",
+                    "handler": null,
+                    "history_id": "dc78a71e9d46a610",
+                    "id": "c6ad8bbeb64086ff",
+                    "inputs": {
+                        "adv|json_conf": {
+                            "id": "ba5e0bd88cc3030c",
+                            "src": "hda",
+                            "uuid": "83ddd986-5a07-406e-91f8-fcc403a6e927"
+                        },
+                        "genbank_files1": {
+                            "id": "4da6c37b755c621f",
+                            "src": "hda",
+                            "uuid": "362bcc57-3b7e-4089-b9c7-33155498d352"
+                        },
+                        "genbank_files2": {
+                            "id": "83933cf19817c19f",
+                            "src": "hda",
+                            "uuid": "4e03baea-fd7c-45b3-b808-4443adc60f91"
+                        },
+                        "genbank_files3": {
+                            "id": "33ff3c6dc742881e",
+                            "src": "hda",
+                            "uuid": "6da90158-c02d-457e-8908-56b532b4b3c2"
+                        },
+                        "genbank_files4": {
+                            "id": "8187d0d2b67e72bf",
+                            "src": "hda",
+                            "uuid": "80b64d26-b0b2-40df-ad9b-41446c172705"
+                        },
+                        "genbank_files5": {
+                            "id": "a744ea399046e427",
+                            "src": "hda",
+                            "uuid": "38751000-4953-44bb-b142-81b4bc41ad97"
+                        }
+                    },
+                    "job_messages": [],
+                    "job_metrics": [],
+                    "job_runner_name": null,
+                    "job_stderr": "",
+                    "job_stdout": "",
+                    "model_class": "Job",
+                    "output_collections": {},
+                    "outputs": {
+                        "output": {
+                            "id": "c6ad8bbeb64086ff",
+                            "src": "hda",
+                            "uuid": "ee43072f-661d-47e0-b30f-d905aac37a4a"
+                        }
+                    },
+                    "params": {
+                        "__input_ext": "\"input\"",
+                        "adv": "{\"json_conf\": {\"values\": [{\"id\": 13, \"src\": \"hda\"}]}}",
+                        "annotation_column": null,
+                        "chromInfo": "\"/tmp/tmpgfe8mdmw/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
+                        "db_uri": null,
+                        "dbkey": "\"?\"",
+                        "fragment_column": null,
+                        "genbank_files": "{\"values\": [{\"id\": 2, \"src\": \"hdca\"}]}",
+                        "sequence_column": null,
+                        "table": null
+                    },
+                    "state": "ok",
+                    "stderr": "",
+                    "stdout": "Container 'test_fragments_db' is already running.\nConnected to database.\nProcessing file: dataset_362bcc57-3b7e-4089-b9c7-33155498d352.dat(p7_L7Ae-Weiss)\nProcessing file: dataset_4e03baea-fd7c-45b3-b808-4443adc60f91.dat(p6_Nt-IgKLsequence)\nProcessing file: dataset_6da90158-c02d-457e-8908-56b532b4b3c2.dat(p6_Kozak-ATG)\nProcessing file: dataset_80b64d26-b0b2-40df-ad9b-41446c172705.dat(p4_Kt-L7Ae-Weiss)\nProcessing file: dataset_38751000-4953-44bb-b142-81b4bc41ad97.dat(HC_Amp_ccdB)\nInserted 5 fragments.\nFragment names written to '/tmp/tmpgfe8mdmw/job_working_directory/000/14/outputs/dataset_ee43072f-661d-47e0-b30f-d905aac37a4a.dat'.\n",
+                    "tool_id": "save_to_db",
+                    "tool_stderr": "",
+                    "tool_stdout": "Container 'test_fragments_db' is already running.\nConnected to database.\nProcessing file: dataset_362bcc57-3b7e-4089-b9c7-33155498d352.dat(p7_L7Ae-Weiss)\nProcessing file: dataset_4e03baea-fd7c-45b3-b808-4443adc60f91.dat(p6_Nt-IgKLsequence)\nProcessing file: dataset_6da90158-c02d-457e-8908-56b532b4b3c2.dat(p6_Kozak-ATG)\nProcessing file: dataset_80b64d26-b0b2-40df-ad9b-41446c172705.dat(p4_Kt-L7Ae-Weiss)\nProcessing file: dataset_38751000-4953-44bb-b142-81b4bc41ad97.dat(HC_Amp_ccdB)\nInserted 5 fragments.\nFragment names written to '/tmp/tmpgfe8mdmw/job_working_directory/000/14/outputs/dataset_ee43072f-661d-47e0-b30f-d905aac37a4a.dat'.\n",
+                    "update_time": "2025-06-02T10:26:21.180586",
+                    "user_email": "planemo@galaxyproject.org",
+                    "user_id": "c804608f95de6282"
+                },
+                "status": "success",
+                "test_index": 1,
+                "time_seconds": 26.70093870162964,
+                "tool_id": "save_to_db",
+                "tool_version": "0.2.0+galaxy2"
+            },
+            "has_data": true,
+            "id": "save_to_db-1"
         }
     ],
     "version": "0.1"
--- a/save_to_db.py	Mon Jun 02 09:48:14 2025 +0000
+++ b/save_to_db.py	Mon Jun 02 10:29:28 2025 +0000
@@ -123,8 +123,9 @@
             for gb_file in gb_files:
                 # Extract base file name (just the file name, not the full path)
                 real_file_name = os.path.basename(gb_file)
+                fragment_name = file_name_mapping_dict.get(real_file_name)
 
-                print(f"Processing file: {real_file_name}")  # Debugging: Log the current file
+                print(f"Processing file: {real_file_name}({fragment_name})")  # Debugging: Log the current file
 
                 # Get the corresponding fragment name from the mapping
                 fragment_name = file_name_mapping_dict.get(real_file_name)
@@ -196,6 +197,9 @@
     if args.json_conf != 'None' or '':
         with open(args.json_conf, "r") as f:
             json_config = json.load(f)
+        if "execution" in json_config and json_config["execution"] is False:
+            print("Execution was blocked by config (execution = false)")
+            return
 
     # Prefer user input; fallback to JSON_ values if not provided
     user_params = {
--- a/save_to_db.xml	Mon Jun 02 09:48:14 2025 +0000
+++ b/save_to_db.xml	Mon Jun 02 10:29:28 2025 +0000
@@ -39,6 +39,29 @@
     </outputs>
     <tests>
     <!--Only 1 test can be execute because the fragment will be already saved for the second test and it will return error as the fragments are present in the DB (execut ../get_db_data/testMock.py to regenerate initial DB)-->
+        <!--test tool blocking from JSON -->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="p7_L7Ae-Weiss" value="p7_L7Ae-Weiss.gb" />
+                    <element name="p7_gfp_sequence" value="p6_Nt-IgKLsequence.gb" />
+                    <element name="p14_CMVp" value="p6_Kozak-ATG.gb" />
+                    <element name="p16_bGHpolyA" value="p4_Kt-L7Ae-Weiss.gb" />
+                    <element name="p18_CMVp" value="HC_Amp_ccdB.gb" />
+                </collection>
+            </param>
+            <param name="adv|json_conf" value="test-JSON_arg_block.json" />
+            <output name="output" file="test_raport.txt" ftype="txt" >
+                <assert_contents>
+                     <has_n_lines n="5" />
+                     <has_line_matching expression="p7_L7Ae-Weiss" />
+                     <has_line_matching expression="p6_Nt-IgKLsequence" />
+                     <has_line_matching expression="p6_Kozak-ATG" />
+                     <has_line_matching expression="p4_Kt-L7Ae-Weiss" />
+                     <has_line_matching expression="HC_Amp_ccdB" />
+                </assert_contents>
+            </output>
+        </test>
         <!--test DB config in the tool -->
         <test> 
             <param name="genbank_files">
@@ -90,7 +113,7 @@
             </output>
         </test>
     </tests>
-    
+
     <help><![CDATA[
 Save Data To DB
 ===================
@@ -106,6 +129,14 @@
 * **DB Column Contains Annotation For Ganbank File**: Column containing annotation data, to save al part before "ORIGIN" in the .gb file.
 * **DB IDs Column Name**: Column holding the unique fragment IDs.
 * **DB Connection URI**: URI used to connect to the database (e.g., postgresql://user:password@host:port/DB_name).
+* **DB config as a json file**: JSON file contains the DB configuration:
+    - "JSON_table": will be the key to the table name.
+    - "JSON_sequence_column":  will be the key to the sequence column.
+    - "JSON_annotation_column":  will be the key to the annotation column.
+    - "JSON_fragment_column": will be the key to the fragment column.
+    - "JSON_db_uri": will be the key to the URI.
+    - "execution": It is the key to execute or block the tool during a workflow ("True" or "False").
+* NOTE: the JSON file can be generated using the json_db_config_generating tool. 
     ]]></help>
     <citations>
         <citation type="bibtex">
--- a/test-data/test-JSON_arg.json	Mon Jun 02 09:48:14 2025 +0000
+++ b/test-data/test-JSON_arg.json	Mon Jun 02 10:29:28 2025 +0000
@@ -3,6 +3,7 @@
     "JSON_sequence_column": "sequence",
     "JSON_annotation_column": "annotation",
     "JSON_fragment_column": "fragment",
-    "JSON_db_uri": "postgresql://postgres:RK17@localhost:5432/test_fragments_db"
+    "JSON_db_uri": "postgresql://postgres:RK17@localhost:5432/test_fragments_db",
+    "execution": true
 }
   
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test-JSON_arg_block.json	Mon Jun 02 10:29:28 2025 +0000
@@ -0,0 +1,9 @@
+{
+    "JSON_table": "sample",
+    "JSON_sequence_column": "sequence",
+    "JSON_annotation_column": "annotation",
+    "JSON_fragment_column": "fragment",
+    "JSON_db_uri": "postgresql://postgres:RK17@localhost:5432/test_fragments_db",
+    "execution": false
+}
+  
\ No newline at end of file