Added templates for unit testing and sphinx documentation

This commit is contained in:
Brandon Rozek 2020-03-15 14:27:56 -04:00
parent 2e01bc16ea
commit ea62ccf389
18 changed files with 202 additions and 33 deletions

6
.gitignore vendored
View file

@ -2,3 +2,9 @@ __pycache__/
*.py[cod] *.py[cod]
rlenv/ rlenv/
runs/ runs/
*.tox
*.coverage
.vscode/
docs/build
.mypy_cache/
*egg-info*

20
docs/Makefile Normal file
View file

@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = source
BUILDDIR = build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

35
docs/make.bat Normal file
View file

@ -0,0 +1,35 @@
@ECHO OFF
pushd %~dp0
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set SOURCEDIR=source
set BUILDDIR=build
if "%1" == "" goto help
%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
goto end
:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
:end
popd

View file

@ -0,0 +1,4 @@
Action Selector
===============
.. automodule:: rltorch.action_selector
:members:

4
docs/source/agents.rst Normal file
View file

@ -0,0 +1,4 @@
Agents
======
.. automodule:: rltorch.agents
:members:

58
docs/source/conf.py Normal file
View file

@ -0,0 +1,58 @@
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Project information -----------------------------------------------------
project = 'RLTorch'
copyright = '2020, Brandon Rozek'
author = 'Brandon Rozek'
# The full version, including alpha/beta/rc tags
release = '0.1.0'
# -- General configuration ---------------------------------------------------
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
"sphinx.ext.autodoc",
'sphinx.ext.autosummary',
'sphinx.ext.napoleon',
"sphinx.ext.viewcode",
"sphinx.ext.mathjax",
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = []
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'alabaster'
html_sidebars = {
'**': [
'about.html',
'navigation.html',
'searchbox.html',
]
}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

5
docs/source/env.rst Normal file
View file

@ -0,0 +1,5 @@
Environment Utilities
=====================
.. automodule:: rltorch.env
:members:

15
docs/source/index.rst Normal file
View file

@ -0,0 +1,15 @@
Welcome to RLTorch's documentation!
===================================
.. toctree::
:maxdepth: 2
:caption: Contents:
action_selector
agents
env
memory
mp
network
scheduler
log
seed

4
docs/source/log.rst Normal file
View file

@ -0,0 +1,4 @@
Logging
=======
.. automodule:: rltorch.log
:members:

4
docs/source/memory.rst Normal file
View file

@ -0,0 +1,4 @@
Memory Structures
=================
.. automodule:: rltorch.memory
:members:

4
docs/source/mp.rst Normal file
View file

@ -0,0 +1,4 @@
Multiprocessing
===============
.. automodule:: rltorch.mp
:members:

4
docs/source/network.rst Normal file
View file

@ -0,0 +1,4 @@
Neural Networks
===============
.. automodule:: rltorch.network
:members:

View file

@ -0,0 +1,4 @@
Hyperparameter Scheduling
=========================
.. automodule:: rltorch.scheduler
:members:

4
docs/source/seed.rst Normal file
View file

@ -0,0 +1,4 @@
Seeding
=======
.. automodule:: rltorch.seed
:members:

View file

@ -1,32 +0,0 @@
absl-py==0.7.0
astor==0.7.1
atari-py==0.1.7
certifi==2018.11.29
chardet==3.0.4
future==0.17.1
gast==0.2.2
grpcio==1.18.0
gym==0.10.11
h5py==2.9.0
idna==2.8
Keras-Applications==1.0.7
Keras-Preprocessing==1.0.8
Markdown==3.0.1
numpy==1.16.0
opencv-python==4.0.0.21
Pillow==6.2.0
pkg-resources==0.0.0
protobuf==3.6.1
pyglet==1.3.2
PyOpenGL==3.1.0
requests==2.21.0
scipy==1.2.0
six==1.12.0
tensorboard==1.12.2
tensorboardX==1.6
tensorflow==1.15.2
termcolor==1.1.0
torch==1.0.0
urllib3==1.24.2
Werkzeug==0.15.3
numba==0.42.1

View file

@ -12,4 +12,11 @@ setuptools.setup(
description="Reinforcement Learning Framework for PyTorch", description="Reinforcement Learning Framework for PyTorch",
version="0.1", version="0.1",
packages=setuptools.find_packages(), packages=setuptools.find_packages(),
install_requires=[
"numpy~=1.16.0",
"opencv-python~=4.2.0.32",
"gym~=0.10.11",
"torch~=1.4.0",
"numba~=0.48.0"
]
) )

6
tests/test.py Normal file
View file

@ -0,0 +1,6 @@
import rltorch
import unittest
class Test(unittest.TestCase):
def test(self):
pass

17
tox.ini Normal file
View file

@ -0,0 +1,17 @@
[tox]
envlist =
py36
py37
py38
[testenv]
deps = coverage
commands =
coverage run --source=tests,rltorch -m unittest discover tests
[testenv:py38]
commands =
coverage run --source=tests,rltorch -m unittest discover tests
coverage report -m