1#! /usr/bin/env python 2 3# Copyright 2009 Google Inc. All Rights Reserved. 4# Copyright 2014 Altera Corporation. All Rights Reserved. 5# Copyright 2014-2018 John McGehee 6# 7# Licensed under the Apache License, Version 2.0 (the "License"); 8# you may not use this file except in compliance with the License. 9# You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, software 14# distributed under the License is distributed on an "AS IS" BASIS, 15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16# See the License for the specific language governing permissions and 17# limitations under the License. 18import os 19 20from setuptools import setup, find_packages 21 22from pyfakefs.fake_filesystem import __version__ 23 24NAME = 'pyfakefs' 25REQUIRES = [] 26DESCRIPTION = ('pyfakefs implements a fake file system that mocks ' 27 'the Python file system modules.') 28 29URL = "http://pyfakefs.org" 30 31BASE_PATH = os.path.abspath(os.path.dirname(__file__)) 32with open(os.path.join(BASE_PATH, 'README.md')) as f: 33 LONG_DESCRIPTION = f.read() 34 35CLASSIFIERS = [ 36 'Development Status :: 5 - Production/Stable', 37 'Environment :: Console', 38 'Intended Audience :: Developers', 39 'License :: OSI Approved :: Apache Software License', 40 'Programming Language :: Python :: 3.5', 41 'Programming Language :: Python :: 3.6', 42 'Programming Language :: Python :: 3.7', 43 'Programming Language :: Python :: 3.8', 44 'Programming Language :: Python :: Implementation :: CPython', 45 'Programming Language :: Python :: Implementation :: PyPy', 46 'Operating System :: POSIX', 47 'Operating System :: MacOS', 48 'Operating System :: Microsoft :: Windows', 49 'Topic :: Software Development :: Libraries', 50 'Topic :: Software Development :: Libraries :: Python Modules', 51 'Topic :: Software Development :: Testing', 52 'Topic :: System :: Filesystems', 53] 54 55AUTHOR = 'Google' 56AUTHOR_EMAIL = 'google-pyfakefs@google.com' 57MAINTAINER = 'John McGehee' 58MAINTAINER_EMAIL = 'pyfakefs@johnnado.com' 59KEYWORDS = ("testing test file os shutil glob mocking unittest " 60 "fakes filesystem unit").split(' ') 61 62params = dict( 63 name=NAME, 64 entry_points={ 65 'pytest11': ['pytest_fakefs = pyfakefs.pytest_plugin'], 66 }, 67 version=__version__, 68 install_requires=REQUIRES, 69 70 # metadata for upload to PyPI 71 author=AUTHOR, 72 author_email=AUTHOR_EMAIL, 73 maintainer=MAINTAINER, 74 maintainer_email=MAINTAINER_EMAIL, 75 description=DESCRIPTION, 76 long_description=LONG_DESCRIPTION, 77 long_description_content_type='text/markdown', 78 keywords=KEYWORDS, 79 url=URL, 80 classifiers=CLASSIFIERS, 81 python_requires='>=3.5', 82 test_suite='pyfakefs.tests', 83 packages=find_packages(exclude=['docs']) 84) 85 86setup(**params) 87