Commit c0877ef1 authored by julian.gethmann's avatar julian.gethmann

Update structure to src and license to MIT

* Update to current PyScaffold structure with src/cassandra as main
sources directory
* Update license from BSD-3 to MIT
parent 37ed0ffa
......@@ -3,19 +3,12 @@ Changelog
=========
* [TODO] Add the raw PV name option to the command line interface
0.7.2 (2017-11-)
------------------
* Delete not implemented argument `show_url` of function `dump_cassandra_data`
0.7.2 (2018-)
------------------
* remove not implemented argument `show_url` of `dump_cassandra_data()`
* write tests that are independent of access to the IBPT network
0.7.2 (2018-)
------------------
* remove not implemented argument `show_url` of `dump_cassandra_data()`
* write tests that are independent of access to the IBPT network
* move directory structure to new one (cassandra->src/cassandra) to complete `PyScaffold` structure
0.7.1 (2017-10-31)
------------------
......
BSD 3-Clause License
The MIT License (MIT)
Copyright (c) 2017, Julian Gethmann
All rights reserved.
Copyright (c) 2018 Julian Gethmann
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
......@@ -6,6 +6,10 @@ SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = _build
AUTODOCDIR = api
AUTODOCBUILD = sphinx-apidoc
PROJECT = cassandra
MODULEDIR = ../src/cassandra
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $?), 1)
......@@ -19,7 +23,7 @@ ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext doc-requirements
help:
@echo "Please use \`make <target>' where <target> is one of"
......@@ -47,131 +51,143 @@ help:
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
clean:
rm -rf $(BUILDDIR)/*
rm -rf $(BUILDDIR)/* $(AUTODOCDIR)
html:
$(AUTODOCDIR): $(MODULEDIR)
mkdir -p $@
$(AUTODOCBUILD) -f -o $@ $^
doc-requirements: $(AUTODOCDIR)
html: doc-requirements
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
dirhtml: doc-requirements
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
singlehtml: doc-requirements
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
pickle: doc-requirements
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
json: doc-requirements
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
htmlhelp: doc-requirements
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
qthelp: doc-requirements
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/cassandra.qhcp"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/$(PROJECT).qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/cassandra.qhc"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/$(PROJECT).qhc"
devhelp:
devhelp: doc-requirements
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $HOME/.local/share/devhelp/cassandra"
@echo "# ln -s $(BUILDDIR)/devhelp $HOME/.local/share/devhelp/cassandra"
@echo "# mkdir -p $HOME/.local/share/devhelp/$(PROJECT)"
@echo "# ln -s $(BUILDDIR)/devhelp $HOME/.local/share/devhelp/$(PROJEC)"
@echo "# devhelp"
epub:
epub: doc-requirements
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
patch-latex:
find _build/latex -iname "*.tex" | xargs -- \
sed -i'' 's~includegraphics{~includegraphics\[keepaspectratio,max size={\\textwidth}{\\textheight}\]{~g'
latex: doc-requirements
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
$(MAKE) patch-latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
latexpdf: doc-requirements
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
$(MAKE) patch-latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
latexpdfja:
latexpdfja: doc-requirements
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through platex and dvipdfmx..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
text: doc-requirements
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
man: doc-requirements
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
texinfo:
texinfo: doc-requirements
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
@echo "Run \`make' in that directory to run these through makeinfo" \
"(use \`make info' here to do that automatically)."
info:
info: doc-requirements
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo "Running Texinfo files through makeinfo..."
make -C $(BUILDDIR)/texinfo info
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
gettext:
gettext: doc-requirements
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
@echo
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
changes:
changes: doc-requirements
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
linkcheck: doc-requirements
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
doctest:
doctest: doc-requirements
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
xml:
xml: doc-requirements
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
@echo
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
pseudoxml:
pseudoxml: doc-requirements
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
.. _changes:
.. include:: ../CHANGES.rst
......@@ -8,33 +8,53 @@
# All configuration values have a default; values that are commented out
# serve to show the default.
import os
import sys
import inspect
import shutil
__location__ = os.path.join(os.getcwd(), os.path.dirname(
inspect.getfile(inspect.currentframe())))
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
# sys.path.insert(0, os.path.abspath('.'))
sys.path.insert(0, os.path.join(__location__, '../src'))
# -- Hack for ReadTheDocs ------------------------------------------------------
# -- Run sphinx-apidoc ------------------------------------------------------
# This hack is necessary since RTD does not issue `sphinx-apidoc` before running
# `sphinx-build -b html . _build/html`. See Issue:
# https://github.com/rtfd/readthedocs.org/issues/1139
# DON'T FORGET: Check the box "Install your project inside a virtualenv using
# setup.py install" in the RTD Advanced Settings.
import os
on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
if on_rtd:
import inspect
# Additionally it helps us to avoid running apidoc manually
try: # for Sphinx >= 1.7
from sphinx.ext import apidoc
except ImportError:
from sphinx import apidoc
__location__ = os.path.join(os.getcwd(), os.path.dirname(
inspect.getfile(inspect.currentframe())))
output_dir = os.path.join(__location__, "api")
module_dir = os.path.join(__location__, "../src/cassandra")
try:
shutil.rmtree(output_dir)
except FileNotFoundError:
pass
try:
import sphinx
from distutils.version import LooseVersion
output_dir = os.path.join(__location__, "../docs/api")
module_dir = os.path.join(__location__, "../cassandra")
cmd_line_template = "sphinx-apidoc -f -o {outputdir} {moduledir}"
cmd_line = cmd_line_template.format(outputdir=output_dir, moduledir=module_dir)
apidoc.main(cmd_line.split(" "))
args = cmd_line.split(" ")
if LooseVersion(sphinx.__version__) >= LooseVersion('1.7'):
args = args[1:]
apidoc.main(args)
except Exception as e:
print("Running `sphinx-apidoc` failed!\n{}".format(e))
# -- General configuration -----------------------------------------------------
......@@ -62,7 +82,7 @@ master_doc = 'index'
# General information about the project.
project = u'cassandra'
copyright = u'2017, Julian Gethmann'
copyright = u'2018, Julian Gethmann'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
......@@ -239,11 +259,11 @@ latex_documents = [
# -- External mapping ------------------------------------------------------------
python_version = '.'.join(map(str, sys.version_info[0:2]))
intersphinx_mapping = {
'sphinx': ('http://sphinx.pocoo.org', None),
'python': ('http://docs.python.org/' + python_version, None),
'matplotlib': ('http://matplotlib.sourceforge.net', None),
'numpy': ('http://docs.scipy.org/doc/numpy', None),
'sphinx': ('http://www.sphinx-doc.org/en/stable', None),
'python': ('https://docs.python.org/' + python_version, None),
'matplotlib': ('https://matplotlib.org', None),
'numpy': ('https://docs.scipy.org/doc/numpy', None),
'sklearn': ('http://scikit-learn.org/stable', None),
'pandas': ('http://pandas.pydata.org/pandas-docs/stable', None),
'scipy': ('http://docs.scipy.org/doc/scipy/reference/', None),
'scipy': ('https://docs.scipy.org/doc/scipy/reference', None),
}
......@@ -9,7 +9,7 @@ Contents
License <license>
Authors <authors>
Changelog <changes>
Changelog <changelog>
Module Reference <api/modules>
Contributing <contributing>
......
matplotlib
numpy
paramiko
setuptools == 39.0.1
# cython
# shutil
# tempfile
# json
matplotlib==2.2.2
numpy==1.14.1
paramiko==2.4.0
# setuptools==39.0.1
[metadata]
name = cassandra
summary = Cassandra JSON interface wrapper
description = Cassandra JSON interface wrapper
author = Julian Gethmann
author-email = julian.gethmann@kit.edu
license = mit
home-page = http://git.scc.kit.edu/las/py/cassandra
description-file = README.rst
url = https://git.scc.kit.edu/las/py/cassandra
long-description = file: README.rst
platforms = any
# Add here all kinds of additional classifiers as defined under
# https://pypi.python.org/pypi?%3Aaction=list_classifiers
classifier =
classifiers =
Development Status :: 4 - Beta
Programming Language :: Python
[entry_points]
# Add here console scripts like:
# console_scripts =
# script_name = cassandra.module:function
# For example:
# console_scripts =
# fibonacci = cassandra.skeleton:run
# as well as other entry_points.
[options]
zip_safe = False
packages = find:
include_package_data = True
package_dir =
=src
install_requires =
matplotlib
numpy
paramiko
tests_require = pytest; pytest-cov; pandas; tox
[options.packages.find]
where = src
exclude =
tests
[files]
# Add here 'data_files', 'packages' or 'namespace_packages'.
# Additional data files are defined as key value pairs of target directory
# and source location from the root of the repository:
packages =
cassandra
cassandra.css_read
cassandra.cassandra
cassandra.pd
cassandra.fetch
cassandra.tools
data_files =
share/cassandra_docs = docs/*
test_data = tests/data/*
# package_data = {"test_data": ["tests/data/*"]}
# from pkg_resources
# from pkg_resources import Requirement, resource_filename
# filename = resource_filename(Requirement.parse("MyProject"),"sample.conf")
[extras]
# Add here additional requirements for extra features, like:
# PDF =
# ReportLab>=1.2
# RXP
[options.extras_require]
# Add here additional requirements for extra features, to install with:
# `pip install cassandra[PDF]` like:
# PDF = ReportLab; RXP
[test]
# py.test options when running `python setup.py test`
......@@ -59,9 +47,13 @@ addopts = tests
addopts =
--cov cassandra --cov-report term-missing
--verbose
norecursedirs =
dist
build
.tox
[aliases]
docs = build_sphinx
release = sdist bdist_wheel upload
[bdist_wheel]
# Use this option if your package is pure-python
......@@ -71,16 +63,6 @@ universal = 1
source_dir = docs
build_dir = docs/_build
[pbr]
# Let pbr run sphinx-apidoc
autodoc_tree_index_modules = True
# autodoc_tree_excludes = ...
# Let pbr itself generate the apidoc
# autodoc_index_modules = True
# autodoc_exclude_modules = ...
# Convert warnings to errors
# warnerrors = True
[devpi:upload]
# Options for the devpi: PyPI server and packaging tool
# VCS export must be deactivated since we are using setuptools-scm
......@@ -89,5 +71,24 @@ formats = bdist_wheel
[yapf]
based_on_style = google
spaces_before_comment = 4
spaces_before_comment = 2
split_before_logical_operator = true
[flake8]
# Some sane defaults for the code style checker flake8
exclude =
.tox
build
dist
.eggs
docs/conf.py
[pyscaffold]
# PyScaffold's parameters when the project was created.
# This will be used when updating. Do not change!
version = 3.0.1
package = cassandra
extensions =
pre_commit
tox
gitlab
......@@ -3,19 +3,28 @@
"""
Setup file for cassandra.
This file was generated with PyScaffold 2.5.8, a tool that easily
puts up a scaffold for your new Python project. Learn more under:
http://pyscaffold.readthedocs.org/
This file was generated with PyScaffold 3.0.1.
PyScaffold helps you to put up the scaffold of your new Python project.
Learn more under: http://pyscaffold.org/
"""
import sys
from setuptools import setup
# Add here console scripts and other entry points in ini-style format
entry_points = """
[console_scripts]
# script_name = cassandra.module:function
# For example:
# fibonacci = cassandra.skeleton:run
"""
def setup_package():
needs_sphinx = {'build_sphinx', 'upload_docs'}.intersection(sys.argv)
sphinx = ['sphinx'] if needs_sphinx else []
setup(setup_requires=['six', 'pyscaffold>=2.5a0,<2.6a0'] + sphinx,
setup(setup_requires=['pyscaffold>=3.0a0,<3.1a0'] + sphinx,
entry_points=entry_points,
use_pyscaffold=True)
......
......@@ -4,11 +4,13 @@ Read data from ANKA's ``Cassandra`` and exported data exported by ``Control Syst
.. moduleauthor:: Julian Gethmann <atb@gethmann.org>
"""
import pkg_resources
from pkg_resources import get_distribution, DistributionNotFound
try:
__version__ = pkg_resources.get_distribution(__name__).version
except pkg_resources.RequirementParseError:
# Change here if project is renamed and does not equal the package name
dist_name = __name__
__version__ = get_distribution(dist_name).version
except DistributionNotFound:
__version__ = 'unknown'
from . import css_read
......
......@@ -200,10 +200,10 @@ class CassandraHelper(object):
else:
ret = None
for format_ in [
"%Y/%m/%d %H:%M:%S", # CSS string
"%Y-%m-%dT%Hh%Mm%S", # filename convention
"%Y-%m-%dT%H:%M:%S", # ISO 8601
"%Y-%m-%d_%H-%M-%S", # MML name format
"%Y/%m/%d %H:%M:%S", # CSS string
"%Y-%m-%dT%Hh%Mm%S", # filename convention
"%Y-%m-%dT%H:%M:%S", # ISO 8601
"%Y-%m-%d_%H-%M-%S", # MML name format
]:
try:
ret = datetime.datetime.strptime(time_string, format_)
......
......@@ -145,8 +145,8 @@ def load_css_data(filename, system="np", dropna=True):
dtype=dtype,
converters=convs,
keep_default_na=True,
# na_values="#N/A",
# parse_dates=True, decimal=",",
# na_values="#N/A",
# parse_dates=True, decimal=",",
encoding="utf-8",
)
if dropna:
......
......@@ -6,11 +6,11 @@
If run with "anka" as its argument runs without the proxy-thing (e. g. via VPN)
"""
from urllib import request
import json
import datetime
import json
import sys
from os import path
from urllib import request
class Pvis():
......@@ -59,7 +59,7 @@ def main(intranet=True):
pvi = Pvis.pvis["sh"]
count = 1
show_url = False # print the url (locally) if True
show_url = False # print the url (locally) if True
# If you edit the filename scheme here you must edit it in
# dump_cassandra_data, too.
......
......@@ -15,13 +15,13 @@ from .cassandra import Cassandra, Pvs
def pvs2pd(
start, # type: datetime.datetime
end, # type: datetime.datetime
pv_names, # type: Iterable[str]
count=None, # type: Optional[int]
upsample=None, # type: Optional[str]
save_local=False, # type: Optional[bool]
): # type (...) -> pd.DataFrame
start, # type: datetime.datetime
end, # type: datetime.datetime
pv_names, # type: Iterable[str]
count=None, # type: Optional[int]
upsample=None, # type: Optional[str]
save_local=False, # type: Optional[bool]
): # type (...) -> pd.DataFrame
# Optional[int], Optional[str], Optional[bool]) -> pd.DataFrame
"""Return a `pd.DataFrame` with data for all `pv_names` and `time` as index
......@@ -72,7 +72,7 @@ def pvs2pd(
if save_local:
cas = Cassandra(start, end, pv=pv, count=None, directory=".")
data = cas.get_json_local(
) # type: Tuple[List[datetime.datetime], List[float]]
) # type: Tuple[List[datetime.datetime], List[float]]
collected_data = collected_data.join(
pd.DataFrame({
"time": data[0],
......
......@@ -12,8 +12,7 @@ import argparse
import logging
from math import sqrt
from .cassandra import Cassandra
from .cassandra import Pvs
from .cassandra import Cassandra, Pvs
_logger = logging.getLogger("cassandra.tools")
logging.getLogger('cassandra.tools').addHandler(logging.NullHandler())
......@@ -88,7 +87,7 @@ def get_mean_values():
"-e",
dest="end_time",
nargs=1,
type=str, # required=True,
type=str, # required=True,
help="End time in CSS's exported format 'YYYY/MM/DD HH:MM:SS'")
# TODO: either --pvs or --rawpvs
parser.add_argument(
......
......@@ -20,11 +20,11 @@ import pytest
from cassandra.pd import pvs2pd
setup = NamedTuple("setup", [
("start", datetime.datetime),
("end", datetime.datetime),
("pv_list", List[str]),
]
)
("start", datetime.datetime),
("end", datetime.datetime),
("pv_list", List[str]),
])
class TestCassandraPD(object):
......
......@@ -3,15 +3,13 @@ minversion = 1.8
envlist = py27,py34,py35,py36,flake8,docs,pypy
skip_missing_interpreters = True
#[flake8]
#ignore=E501
[testenv]
changedir = tests
commands =
py.test {posargs}
deps =
pytest
pytest-cov
-r{toxinidir}/requirements.txt
pandas
......@@ -27,5 +25,5 @@ addopts = -rsxXf
[testenv:docs]
whitelist_externals=make
command =
command =
make docs
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment