summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/harness/setup.py
blob: d4e425659c75115c1f43b8eed8c3b9a2fb59d317 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
# You can obtain one at http://mozilla.org/MPL/2.0/.

import glob
import os
import sys
import textwrap

from setuptools import setup, find_packages

here = os.path.split(__file__)[0]

PACKAGE_NAME = 'wptrunner'
PACKAGE_VERSION = '1.14'

# Dependencies
with open(os.path.join(here, "requirements.txt")) as f:
    deps = f.read().splitlines()

# Browser-specific requirements
requirements_files = glob.glob(os.path.join(here, "requirements_*.txt"))

profile_dest = None
dest_exists = False

setup(name=PACKAGE_NAME,
      version=PACKAGE_VERSION,
      description="Harness for running the W3C web-platform-tests against various products",
      author='Mozilla Automation and Testing Team',
      author_email='tools@lists.mozilla.org',
      license='MPL 2.0',
      packages=find_packages(exclude=["tests", "metadata", "prefs"]),
      entry_points={
          'console_scripts': [
              'wptrunner = wptrunner.wptrunner:main',
              'wptupdate = wptrunner.update:main',
          ]
      },
      zip_safe=False,
      platforms=['Any'],
      classifiers=['Development Status :: 4 - Beta',
                   'Environment :: Console',
                   'Intended Audience :: Developers',
                   'License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)',
                   'Operating System :: OS Independent'],
      package_data={"wptrunner": ["executors/testharness_marionette.js",
                                  "executors/testharness_webdriver.js",
                                  "executors/reftest.js",
                                  "executors/reftest-wait.js",
                                  "testharnessreport.js",
                                  "testharness_runner.html",
                                  "config.json",
                                  "wptrunner.default.ini",
                                  "browsers/server-locations.txt",
                                  "browsers/b2g_setup/*",
                                  "prefs/*"]},
      include_package_data=True,
      data_files=[("requirements", requirements_files)],
      install_requires=deps
     )

if "install" in sys.argv:
    path = os.path.relpath(os.path.join(sys.prefix, "requirements"), os.curdir)
    print textwrap.fill("""In order to use with one of the built-in browser
products, you will need to install the extra dependencies. These are provided
as requirements_[name].txt in the %s directory and can be installed using
e.g.""" % path, 80)

    print """

pip install -r %s/requirements_firefox.txt
""" % path