Python Library REQ-IF
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

reqif_conv.py 1.1KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/usr/bin/env python
  2. import jinja2
  3. import os
  4. import sys
  5. """fn_tex = 'requirements_specification.tex'
  6. fn_pdf = 'requirements_specification.pdf'
  7. tmp_path = 'tmp'"""
  8. def tex_gen(reqif_data, tex_path):
  9. print('Creating LaTeX-File %s' % tex_path)
  10. with open(tex_path, 'w') as fh:
  11. #
  12. template_path = os.path.abspath(os.path.join(os.path.dirname(__file__), 'templates', 'tex'))
  13. template_filename = 'requirement_specification.tex'
  14. jenv = jinja2.Environment(loader=jinja2.FileSystemLoader(template_path))
  15. template = jenv.get_template(template_filename)
  16. fh.write(template.render(data=reqif_data))
  17. def pdf_gen(tex_path):
  18. pdf_path = os.path.splitext(tex_path)[0] + '.pdf'
  19. print('Creating PDF %s' % pdf_path)
  20. for i in range(3):
  21. sys.stdout.write(' Starting run %d/3 of pdflatex... ' % (i + 1))
  22. sys.stdout.flush()
  23. exit_value = os.system("pdflatex -interaction nonstopmode %s 1> /dev/null" % tex_path)
  24. if exit_value != 0:
  25. print('FAILED')
  26. return -1
  27. break
  28. else:
  29. print('SUCCESS')
  30. return 0