Shared Memory Dictionary utilizing Posix IPC semaphores and shared memory segments and offering permanent disk storage of data if required.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
2.0KB

  1. [tox]
  2. envlist = cov_init, py{27,35,36,37}, cov_report, docs, bandit, pylint
  3. [testenv]
  4. basepython =
  5. py27: {env:TOXPYTHON:python2.7}
  6. py35: {env:TOXPYTHON:python3.5}
  7. py36: {env:TOXPYTHON:python3.6}
  8. py37: {env:TOXPYTHON:python3.7}
  9. {bandit,cov_init,cov_report,docs,lint,pur,pylint}: {env:TOXPYTHON:python3}
  10. setenv =
  11. COVERAGE_FILE = .coverage.{envname}
  12. PYTHONPATH={toxinidir}
  13. PYTHONUNBUFFERED=yes
  14. HOME={env:HOME:/tmp}
  15. skip_missing_interpreters = True
  16. alwayscopy = True
  17. deps =
  18. -r {toxinidir}/requirements-all.txt
  19. commands =
  20. pytest --durations 25 \
  21. --basetemp={envtmpdir} \
  22. --confcutdir=.. \
  23. --cov \
  24. -n 0 \
  25. {posargs}
  26. [testenv:cov_init]
  27. setenv =
  28. COVERAGE_FILE = .coverage
  29. PYTHONPATH={toxinidir}
  30. PYTHONUNBUFFERED=yes
  31. HOME={env:HOME:/tmp}
  32. deps =
  33. coverage
  34. skip_install = True
  35. commands =
  36. coverage erase
  37. [testenv:cov_report]
  38. setenv =
  39. COVERAGE_FILE = .coverage
  40. PYTHONPATH={toxinidir}
  41. PYTHONUNBUFFERED=yes
  42. HOME={env:HOME:/tmp}
  43. deps =
  44. beautifulsoup4
  45. coverage
  46. skip_install = True
  47. commands =
  48. coverage combine
  49. # coverage report
  50. coverage html
  51. {toxinidir}/docs/source/coverage/extract_source.py
  52. [testenv:lint]
  53. setenv =
  54. {[testenv]setenv}
  55. deps =
  56. -r {toxinidir}/requirements-dev.txt
  57. ignore_errors = True
  58. commands =
  59. twine check {distdir}/*
  60. pre-commit run --all-files
  61. [testenv:pur]
  62. skip_install = True
  63. description =
  64. Update all versioned packages in requirements.txt files
  65. setenv =
  66. {[testenv]setenv}
  67. deps =
  68. pur
  69. commands =
  70. pur -r requirements-all.txt
  71. [testenv:pylint]
  72. skip_install = True
  73. setenv =
  74. {[testenv]setenv}
  75. deps =
  76. -r {toxinidir}/requirements-dev.txt
  77. commands =
  78. pylint --rcfile=.pylintrc shm_dict
  79. [testenv:bandit]
  80. skip_install = True
  81. setenv =
  82. {[testenv]setenv}
  83. deps =
  84. bandit
  85. commands =
  86. bandit -r shm_dict
  87. [testenv:docs]
  88. setenv =
  89. {[testenv]setenv}
  90. skip_install = True
  91. description =
  92. Invoke sphinx-build to build the HTML docs
  93. deps =
  94. -r {toxinidir}/requirements-all.txt
  95. commands =
  96. python setup.py build_sphinx -q {posargs}