Shared Memory Dictionary utilizing Posix IPC semaphores and shared memory segments and offering permanent disk storage of data if required.
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  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}