Browse Source

[mod] remove buildout/makefile infrastructure

Adam Tauber 9 years ago
parent
commit
53979a7bf7
68 changed files with 87 additions and 558 deletions
  1. 0 12
      .gitignore
  2. 8 7
      .travis.yml
  3. 0 66
      Makefile
  4. 0 17
      base.cfg
  5. 0 210
      bootstrap.py
  6. 0 30
      buildout.cfg
  7. 70 0
      manage.sh
  8. 0 15
      minimal.cfg
  9. 0 34
      production.cfg
  10. 9 0
      requirements-dev.txt
  11. 0 45
      searx/tests/test_engines.py
  12. 0 0
      tests/__init__.py
  13. 0 0
      tests/robot/__init__.py
  14. 0 0
      tests/robot/test_basic.robot
  15. 0 0
      tests/test_robot.py
  16. 0 0
      tests/unit/__init__.py
  17. 0 0
      tests/unit/engines/__init__.py
  18. 0 0
      tests/unit/engines/test_bing.py
  19. 0 0
      tests/unit/engines/test_bing_images.py
  20. 0 0
      tests/unit/engines/test_bing_news.py
  21. 0 0
      tests/unit/engines/test_blekko_images.py
  22. 0 0
      tests/unit/engines/test_btdigg.py
  23. 0 0
      tests/unit/engines/test_currency_convert.py
  24. 0 0
      tests/unit/engines/test_dailymotion.py
  25. 0 0
      tests/unit/engines/test_deezer.py
  26. 0 0
      tests/unit/engines/test_deviantart.py
  27. 0 0
      tests/unit/engines/test_digg.py
  28. 0 0
      tests/unit/engines/test_duckduckgo.py
  29. 0 0
      tests/unit/engines/test_duckduckgo_definitions.py
  30. 0 0
      tests/unit/engines/test_dummy.py
  31. 0 0
      tests/unit/engines/test_faroo.py
  32. 0 0
      tests/unit/engines/test_flickr.py
  33. 0 0
      tests/unit/engines/test_flickr_noapi.py
  34. 0 0
      tests/unit/engines/test_gigablast.py
  35. 0 0
      tests/unit/engines/test_github.py
  36. 0 0
      tests/unit/engines/test_google.py
  37. 0 0
      tests/unit/engines/test_google_images.py
  38. 0 0
      tests/unit/engines/test_google_news.py
  39. 0 0
      tests/unit/engines/test_kickass.py
  40. 0 0
      tests/unit/engines/test_mediawiki.py
  41. 0 0
      tests/unit/engines/test_mixcloud.py
  42. 0 0
      tests/unit/engines/test_openstreetmap.py
  43. 0 0
      tests/unit/engines/test_photon.py
  44. 0 0
      tests/unit/engines/test_piratebay.py
  45. 0 0
      tests/unit/engines/test_qwant.py
  46. 0 0
      tests/unit/engines/test_searchcode_code.py
  47. 0 0
      tests/unit/engines/test_searchcode_doc.py
  48. 0 0
      tests/unit/engines/test_soundcloud.py
  49. 0 0
      tests/unit/engines/test_spotify.py
  50. 0 0
      tests/unit/engines/test_stackoverflow.py
  51. 0 0
      tests/unit/engines/test_startpage.py
  52. 0 0
      tests/unit/engines/test_subtitleseeker.py
  53. 0 0
      tests/unit/engines/test_swisscows.py
  54. 0 0
      tests/unit/engines/test_twitter.py
  55. 0 0
      tests/unit/engines/test_vimeo.py
  56. 0 0
      tests/unit/engines/test_www1x.py
  57. 0 0
      tests/unit/engines/test_www500px.py
  58. 0 0
      tests/unit/engines/test_yacy.py
  59. 0 0
      tests/unit/engines/test_yahoo.py
  60. 0 0
      tests/unit/engines/test_yahoo_news.py
  61. 0 0
      tests/unit/engines/test_youtube_api.py
  62. 0 0
      tests/unit/engines/test_youtube_noapi.py
  63. 0 0
      tests/unit/test_plugins.py
  64. 0 0
      tests/unit/test_results.py
  65. 0 0
      tests/unit/test_search.py
  66. 0 0
      tests/unit/test_utils.py
  67. 0 0
      tests/unit/test_webapp.py
  68. 0 122
      versions.cfg

+ 0 - 12
.gitignore

@@ -11,18 +11,6 @@ setup.cfg
 */*.pyc
 */*.pyc
 *~
 *~
 
 
-bin/
-build/
-coverage/
-develop-eggs/
-dist/
-eggs/
-include/
-lib/
-local/
-parts/
-searx.egg-info/
-var/
 node_modules/
 node_modules/
 
 
 .tx/
 .tx/

+ 8 - 7
.travis.yml

@@ -11,16 +11,17 @@ before_install:
   - "export DISPLAY=:99.0"
   - "export DISPLAY=:99.0"
   - "sh -e /etc/init.d/xvfb start"
   - "sh -e /etc/init.d/xvfb start"
   - npm install -g less grunt-cli
   - npm install -g less grunt-cli
-  - ( cd searx/static/themes/oscar;npm install )
+  - ( cd searx/static/themes/oscar;npm install; cd - )
 install:
 install:
-  - "make"
+  - ./manage.sh update_packages
+  - ./manage.sh update_dev_packages
   - pip install coveralls
   - pip install coveralls
 script:
 script:
-  - "make flake8"
-  - "make robot"
-  - "make styles"
-  - "make grunt"
-  - make coverage
+  - ./manage.sh pep8_check
+  - ./manage.sh styles
+  - ./manage.sh grunt
+  - ./manage.sh coverage
+  - ./manage.sh robot
 after_success:
 after_success:
   coveralls
   coveralls
 notifications:
 notifications:

+ 0 - 66
Makefile

@@ -1,66 +0,0 @@
-# convenience makefile to boostrap & run buildout
-# use `make options=-v` to run buildout with extra options
-
-version = 2.7
-python = bin/python
-options =
-
-all: .installed.cfg
-
-.installed.cfg: bin/buildout buildout.cfg setup.py
-	bin/buildout $(options)
-
-bin/buildout: $(python) buildout.cfg bootstrap.py
-	$(python) bootstrap.py
-	@touch $@
-
-$(python):
-	virtualenv -p python$(version) --no-site-packages .
-	@touch $@
-
-robot: .installed.cfg
-	@bin/robot
-
-flake8: .installed.cfg
-	@bin/flake8 setup.py
-	@bin/flake8 ./searx/
-
-tests: .installed.cfg flake8
-	@bin/test
-	@grunt test --gruntfile searx/static/themes/oscar/gruntfile.js
-
-coverage: .installed.cfg
-	@bin/coverage run bin/test
-	@bin/coverage report
-	@bin/coverage html
-
-production: bin/buildout production.cfg setup.py
-	bin/buildout -c production.cfg $(options)
-	@echo "* Please modify `readlink --canonicalize-missing ./searx/settings.py`"
-	@echo "* Hint 1: on production, disable debug mode and change secret_key"
-	@echo "* Hint 2: searx will be executed at server startup by crontab"
-	@echo "* Hint 3: to run immediatley, execute 'bin/supervisord'"
-
-minimal: bin/buildout minimal.cfg setup.py
-	bin/buildout -c minimal.cfg $(options)
-
-styles:
-	@lessc -x searx/static/themes/default/less/style.less > searx/static/themes/default/css/style.css
-	@lessc -x searx/static/themes/default/less/style-rtl.less > searx/static/themes/default/css/style-rtl.css
-	@lessc -x searx/static/themes/courgette/less/style.less > searx/static/themes/courgette/css/style.css
-	@lessc -x searx/static/themes/courgette/less/style-rtl.less > searx/static/themes/courgette/css/style-rtl.css
-	@lessc -x searx/static/less/bootstrap/bootstrap.less > searx/static/css/bootstrap.min.css
-	@lessc -x searx/static/themes/oscar/less/oscar/oscar.less > searx/static/themes/oscar/css/oscar.min.css
-	@lessc -x searx/static/themes/pix-art/less/style.less > searx/static/themes/pix-art/css/style.css
-
-grunt:
-	@grunt --gruntfile searx/static/themes/oscar/gruntfile.js
-
-locales:
-	@pybabel compile -d searx/translations
-
-clean:
-	@rm -rf .installed.cfg .mr.developer.cfg bin parts develop-eggs eggs \
-		searx.egg-info lib include .coverage coverage
-
-.PHONY: all tests robot flake8 coverage production minimal styles locales clean

+ 0 - 17
base.cfg

@@ -1,17 +0,0 @@
-[buildout]
-extends = versions.cfg
-unzip = true
-newest = false
-prefer-final = true
-develop = .
-
-eggs =
-    searx
-
-parts =
-    omelette
-
-
-[omelette]
-recipe = collective.recipe.omelette
-eggs = ${buildout:eggs}

+ 0 - 210
bootstrap.py

@@ -1,210 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2006 Zope Foundation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Bootstrap a buildout-based project
-
-Simply run this script in a directory containing a buildout.cfg.
-The script accepts buildout command-line options, so you can
-use the -c option to specify an alternate configuration file.
-"""
-
-import os
-import shutil
-import sys
-import tempfile
-
-from optparse import OptionParser
-
-__version__ = '2015-07-01'
-# See zc.buildout's changelog if this version is up to date.
-
-tmpeggs = tempfile.mkdtemp(prefix='bootstrap-')
-
-usage = '''\
-[DESIRED PYTHON FOR BUILDOUT] bootstrap.py [options]
-
-Bootstraps a buildout-based project.
-
-Simply run this script in a directory containing a buildout.cfg, using the
-Python that you want bin/buildout to use.
-
-Note that by using --find-links to point to local resources, you can keep
-this script from going over the network.
-'''
-
-parser = OptionParser(usage=usage)
-parser.add_option("--version",
-                  action="store_true", default=False,
-                  help=("Return bootstrap.py version."))
-parser.add_option("-t", "--accept-buildout-test-releases",
-                  dest='accept_buildout_test_releases',
-                  action="store_true", default=False,
-                  help=("Normally, if you do not specify a --version, the "
-                        "bootstrap script and buildout gets the newest "
-                        "*final* versions of zc.buildout and its recipes and "
-                        "extensions for you.  If you use this flag, "
-                        "bootstrap and buildout will get the newest releases "
-                        "even if they are alphas or betas."))
-parser.add_option("-c", "--config-file",
-                  help=("Specify the path to the buildout configuration "
-                        "file to be used."))
-parser.add_option("-f", "--find-links",
-                  help=("Specify a URL to search for buildout releases"))
-parser.add_option("--allow-site-packages",
-                  action="store_true", default=False,
-                  help=("Let bootstrap.py use existing site packages"))
-parser.add_option("--buildout-version",
-                  help="Use a specific zc.buildout version")
-parser.add_option("--setuptools-version",
-                  help="Use a specific setuptools version")
-parser.add_option("--setuptools-to-dir",
-                  help=("Allow for re-use of existing directory of "
-                        "setuptools versions"))
-
-options, args = parser.parse_args()
-if options.version:
-    print("bootstrap.py version %s" % __version__)
-    sys.exit(0)
-
-
-######################################################################
-# load/install setuptools
-
-try:
-    from urllib.request import urlopen
-except ImportError:
-    from urllib2 import urlopen
-
-ez = {}
-if os.path.exists('ez_setup.py'):
-    exec(open('ez_setup.py').read(), ez)
-else:
-    exec(urlopen('https://bootstrap.pypa.io/ez_setup.py').read(), ez)
-
-if not options.allow_site_packages:
-    # ez_setup imports site, which adds site packages
-    # this will remove them from the path to ensure that incompatible versions
-    # of setuptools are not in the path
-    import site
-    # inside a virtualenv, there is no 'getsitepackages'.
-    # We can't remove these reliably
-    if hasattr(site, 'getsitepackages'):
-        for sitepackage_path in site.getsitepackages():
-            # Strip all site-packages directories from sys.path that
-            # are not sys.prefix; this is because on Windows
-            # sys.prefix is a site-package directory.
-            if sitepackage_path != sys.prefix:
-                sys.path[:] = [x for x in sys.path
-                               if sitepackage_path not in x]
-
-setup_args = dict(to_dir=tmpeggs, download_delay=0)
-
-if options.setuptools_version is not None:
-    setup_args['version'] = options.setuptools_version
-if options.setuptools_to_dir is not None:
-    setup_args['to_dir'] = options.setuptools_to_dir
-
-ez['use_setuptools'](**setup_args)
-import setuptools
-import pkg_resources
-
-# This does not (always?) update the default working set.  We will
-# do it.
-for path in sys.path:
-    if path not in pkg_resources.working_set.entries:
-        pkg_resources.working_set.add_entry(path)
-
-######################################################################
-# Install buildout
-
-ws = pkg_resources.working_set
-
-setuptools_path = ws.find(
-    pkg_resources.Requirement.parse('setuptools')).location
-
-# Fix sys.path here as easy_install.pth added before PYTHONPATH
-cmd = [sys.executable, '-c',
-       'import sys; sys.path[0:0] = [%r]; ' % setuptools_path +
-       'from setuptools.command.easy_install import main; main()',
-       '-mZqNxd', tmpeggs]
-
-find_links = os.environ.get(
-    'bootstrap-testing-find-links',
-    options.find_links or
-    ('http://downloads.buildout.org/'
-     if options.accept_buildout_test_releases else None)
-    )
-if find_links:
-    cmd.extend(['-f', find_links])
-
-requirement = 'zc.buildout'
-version = options.buildout_version
-if version is None and not options.accept_buildout_test_releases:
-    # Figure out the most recent final version of zc.buildout.
-    import setuptools.package_index
-    _final_parts = '*final-', '*final'
-
-    def _final_version(parsed_version):
-        try:
-            return not parsed_version.is_prerelease
-        except AttributeError:
-            # Older setuptools
-            for part in parsed_version:
-                if (part[:1] == '*') and (part not in _final_parts):
-                    return False
-            return True
-
-    index = setuptools.package_index.PackageIndex(
-        search_path=[setuptools_path])
-    if find_links:
-        index.add_find_links((find_links,))
-    req = pkg_resources.Requirement.parse(requirement)
-    if index.obtain(req) is not None:
-        best = []
-        bestv = None
-        for dist in index[req.project_name]:
-            distv = dist.parsed_version
-            if _final_version(distv):
-                if bestv is None or distv > bestv:
-                    best = [dist]
-                    bestv = distv
-                elif distv == bestv:
-                    best.append(dist)
-        if best:
-            best.sort()
-            version = best[-1].version
-if version:
-    requirement = '=='.join((requirement, version))
-cmd.append(requirement)
-
-import subprocess
-if subprocess.call(cmd) != 0:
-    raise Exception(
-        "Failed to execute command:\n%s" % repr(cmd)[1:-1])
-
-######################################################################
-# Import and run buildout
-
-ws.add_entry(tmpeggs)
-ws.require(requirement)
-import zc.buildout.buildout
-
-if not [a for a in args if '=' not in a]:
-    args.append('bootstrap')
-
-# if -c was provided, we push it back into args for buildout' main function
-if options.config_file is not None:
-    args[0:0] = ['-c', options.config_file]
-
-zc.buildout.buildout.main(args)
-shutil.rmtree(tmpeggs)

+ 0 - 30
buildout.cfg

@@ -1,30 +0,0 @@
-[buildout]
-extends = base.cfg
-develop = .
-
-eggs =
-    searx [test]
-
-parts +=
-    pyscripts
-    robot
-    test
-
-
-[pyscripts]
-recipe = zc.recipe.egg:script
-eggs = ${buildout:eggs}
-interpreter = py
-dependent-scripts = true
-
-
-[robot]
-recipe = zc.recipe.testrunner
-eggs = ${buildout:eggs}
-defaults = ['--color', '--auto-progress', '--layer', 'SearxRobotLayer']
-
-
-[test]
-recipe = zc.recipe.testrunner
-eggs = ${buildout:eggs}
-defaults = ['--color', '--auto-progress', '--layer', 'SearxTestLayer', '--layer', '!SearxRobotLayer']

+ 70 - 0
manage.sh

@@ -0,0 +1,70 @@
+#!/bin/sh
+
+BASE_DIR=$(dirname `readlink -f $0`)
+PYTHONPATH=$BASE_DIR
+SEARX_DIR="$BASE_DIR/searx"
+ACTION=$1
+
+update_packages() {
+    pip install --upgrade -r "$BASE_DIR/requirements.txt"
+}
+
+update_dev_packages() {
+    pip install --upgrade -r "$BASE_DIR/requirements-dev.txt"
+}
+
+pep8_check() {
+    echo '[!] Running pep8 check'
+    pep8 "$SEARX_DIR" "$BASE_DIR/tests"
+}
+
+unit_tests() {
+    echo '[!] Running unit tests'
+    python -m nose2 -s "$BASE_DIR/tests/unit"
+}
+
+py_test_coverage() {
+    echo '[!] Running python test coverage'
+    PYTHONPATH=`pwd` python -m nose2 -C --coverage "$SEARX_DIR" -s "$BASE_DIR/tests/unit"
+    coverage report
+    coverage html
+}
+
+robot_tests() {
+    echo '[!] Running robot tests'
+    python -c "import zope.testrunner; import sys; sys.exit(zope.testrunner.run("\
+"['--color', '--auto-progress', '--layer', 'SearxRobotLayer', '--test-path', '$BASE_DIR']))"
+}
+
+tests() {
+    set -e
+    pep8_check
+    unit_tests
+    robot_tests
+    set +e
+}
+
+build_style() {
+    lessc -x "$BASE_DIR/searx/static/$1" "$BASE_DIR/searx/static/$2"
+}
+
+styles() {
+    echo '[!] Building styles'
+	build_style themes/default/less/style.less themes/default/css/style.css
+	build_style themes/default/less/style-rtl.less themes/default/css/style-rtl.css
+	build_style themes/courgette/less/style.less themes/courgette/css/style.css
+	build_style themes/courgette/less/style-rtl.less themes/courgette/css/style-rtl.css
+	build_style less/bootstrap/bootstrap.less css/bootstrap.min.css
+	build_style themes/oscar/less/oscar/oscar.less themes/oscar/css/oscar.min.css
+	build_style themes/pix-art/less/style.less themes/pix-art/css/style.css
+}
+
+grunt() {
+	grunt --gruntfile "$SEARX_DIR/static/themes/oscar/gruntfile.js"
+}
+
+locales() {
+	pybabel compile -d "$SEARX_DIR/translations"
+}
+
+$ACTION

+ 0 - 15
minimal.cfg

@@ -1,15 +0,0 @@
-[buildout]
-extends = base.cfg
-develop = .
-
-eggs =
-    searx
-
-parts +=
-    pyscripts
-
-
-[pyscripts]
-recipe = zc.recipe.egg:script
-eggs = ${buildout:eggs}
-interpreter = py

+ 0 - 34
production.cfg

@@ -1,34 +0,0 @@
-[buildout]
-extends = base.cfg
-develop = .
-
-eggs =
-    searx
-
-parts +=
-    pyscripts
-    supervisor
-    crontab_reboot
-
-
-[pyscripts]
-recipe = zc.recipe.egg:script
-eggs = ${buildout:eggs}
-interpreter = py
-
-
-[supervisor]
-recipe = collective.recipe.supervisor
-http-socket = unix
-user = searxer
-password = ohpleasedochangeme
-file = /tmp/supervisor.sock
-chmod = 0700
-programs =
-    50 searx    ${buildout:bin-directory}/searx-run
-
-
-[crontab_reboot]
-recipe = z3c.recipe.usercrontab
-times = @reboot
-command = ${buildout:bin-directory}/supervisord

+ 9 - 0
requirements-dev.txt

@@ -0,0 +1,9 @@
+flake8==2.5.1
+mock==1.0.1
+nose2==0.4.7
+nose2[coverage-plugin]
+plone.testing==4.0.15
+robotframework-selenium2library==1.7.4
+robotsuite==1.7.0
+unittest2==1.1.0
+zope.testrunner==4.4.10

+ 0 - 45
searx/tests/test_engines.py

@@ -1,45 +0,0 @@
-from searx.tests.engines.test_bing import *  # noqa
-from searx.tests.engines.test_bing_images import *  # noqa
-from searx.tests.engines.test_bing_news import *  # noqa
-from searx.tests.engines.test_blekko_images import *  # noqa
-from searx.tests.engines.test_btdigg import *  # noqa
-from searx.tests.engines.test_currency_convert import *  # noqa
-from searx.tests.engines.test_dailymotion import *  # noqa
-from searx.tests.engines.test_deezer import *  # noqa
-from searx.tests.engines.test_deviantart import *  # noqa
-from searx.tests.engines.test_digg import *  # noqa
-from searx.tests.engines.test_duckduckgo import *  # noqa
-from searx.tests.engines.test_duckduckgo_definitions import *  # noqa
-from searx.tests.engines.test_dummy import *  # noqa
-from searx.tests.engines.test_faroo import *  # noqa
-from searx.tests.engines.test_flickr import *  # noqa
-from searx.tests.engines.test_flickr_noapi import *  # noqa
-from searx.tests.engines.test_gigablast import *  # noqa
-from searx.tests.engines.test_github import *  # noqa
-from searx.tests.engines.test_google import *  # noqa
-from searx.tests.engines.test_google_images import *  # noqa
-from searx.tests.engines.test_google_news import *  # noqa
-from searx.tests.engines.test_kickass import *  # noqa
-from searx.tests.engines.test_mediawiki import *  # noqa
-from searx.tests.engines.test_mixcloud import *  # noqa
-from searx.tests.engines.test_openstreetmap import *  # noqa
-from searx.tests.engines.test_photon import *  # noqa
-from searx.tests.engines.test_piratebay import *  # noqa
-from searx.tests.engines.test_qwant import *  # noqa
-from searx.tests.engines.test_searchcode_code import *  # noqa
-from searx.tests.engines.test_searchcode_doc import *  # noqa
-from searx.tests.engines.test_soundcloud import *  # noqa
-from searx.tests.engines.test_spotify import *  # noqa
-from searx.tests.engines.test_stackoverflow import *  # noqa
-from searx.tests.engines.test_startpage import *  # noqa
-from searx.tests.engines.test_subtitleseeker import *  # noqa
-from searx.tests.engines.test_swisscows import *  # noqa
-from searx.tests.engines.test_twitter import *  # noqa
-from searx.tests.engines.test_vimeo import *  # noqa
-from searx.tests.engines.test_www1x import *  # noqa
-from searx.tests.engines.test_www500px import *  # noqa
-from searx.tests.engines.test_yacy import *  # noqa
-from searx.tests.engines.test_yahoo import *  # noqa
-from searx.tests.engines.test_youtube_api import *  # noqa
-from searx.tests.engines.test_youtube_noapi import *  # noqa
-from searx.tests.engines.test_yahoo_news import *  # noqa

+ 0 - 0
searx/tests/__init__.py → tests/__init__.py


+ 0 - 0
searx/tests/engines/__init__.py → tests/robot/__init__.py


+ 0 - 0
searx/tests/robot/test_basic.robot → tests/robot/test_basic.robot


+ 0 - 0
searx/tests/test_robot.py → tests/test_robot.py


+ 0 - 0
searx/tests/robot/__init__.py → tests/unit/__init__.py


+ 0 - 0
tests/unit/engines/__init__.py


+ 0 - 0
searx/tests/engines/test_bing.py → tests/unit/engines/test_bing.py


+ 0 - 0
searx/tests/engines/test_bing_images.py → tests/unit/engines/test_bing_images.py


+ 0 - 0
searx/tests/engines/test_bing_news.py → tests/unit/engines/test_bing_news.py


+ 0 - 0
searx/tests/engines/test_blekko_images.py → tests/unit/engines/test_blekko_images.py


+ 0 - 0
searx/tests/engines/test_btdigg.py → tests/unit/engines/test_btdigg.py


+ 0 - 0
searx/tests/engines/test_currency_convert.py → tests/unit/engines/test_currency_convert.py


+ 0 - 0
searx/tests/engines/test_dailymotion.py → tests/unit/engines/test_dailymotion.py


+ 0 - 0
searx/tests/engines/test_deezer.py → tests/unit/engines/test_deezer.py


+ 0 - 0
searx/tests/engines/test_deviantart.py → tests/unit/engines/test_deviantart.py


+ 0 - 0
searx/tests/engines/test_digg.py → tests/unit/engines/test_digg.py


+ 0 - 0
searx/tests/engines/test_duckduckgo.py → tests/unit/engines/test_duckduckgo.py


+ 0 - 0
searx/tests/engines/test_duckduckgo_definitions.py → tests/unit/engines/test_duckduckgo_definitions.py


+ 0 - 0
searx/tests/engines/test_dummy.py → tests/unit/engines/test_dummy.py


+ 0 - 0
searx/tests/engines/test_faroo.py → tests/unit/engines/test_faroo.py


+ 0 - 0
searx/tests/engines/test_flickr.py → tests/unit/engines/test_flickr.py


+ 0 - 0
searx/tests/engines/test_flickr_noapi.py → tests/unit/engines/test_flickr_noapi.py


+ 0 - 0
searx/tests/engines/test_gigablast.py → tests/unit/engines/test_gigablast.py


+ 0 - 0
searx/tests/engines/test_github.py → tests/unit/engines/test_github.py


+ 0 - 0
searx/tests/engines/test_google.py → tests/unit/engines/test_google.py


+ 0 - 0
searx/tests/engines/test_google_images.py → tests/unit/engines/test_google_images.py


+ 0 - 0
searx/tests/engines/test_google_news.py → tests/unit/engines/test_google_news.py


+ 0 - 0
searx/tests/engines/test_kickass.py → tests/unit/engines/test_kickass.py


+ 0 - 0
searx/tests/engines/test_mediawiki.py → tests/unit/engines/test_mediawiki.py


+ 0 - 0
searx/tests/engines/test_mixcloud.py → tests/unit/engines/test_mixcloud.py


+ 0 - 0
searx/tests/engines/test_openstreetmap.py → tests/unit/engines/test_openstreetmap.py


+ 0 - 0
searx/tests/engines/test_photon.py → tests/unit/engines/test_photon.py


+ 0 - 0
searx/tests/engines/test_piratebay.py → tests/unit/engines/test_piratebay.py


+ 0 - 0
searx/tests/engines/test_qwant.py → tests/unit/engines/test_qwant.py


+ 0 - 0
searx/tests/engines/test_searchcode_code.py → tests/unit/engines/test_searchcode_code.py


+ 0 - 0
searx/tests/engines/test_searchcode_doc.py → tests/unit/engines/test_searchcode_doc.py


+ 0 - 0
searx/tests/engines/test_soundcloud.py → tests/unit/engines/test_soundcloud.py


+ 0 - 0
searx/tests/engines/test_spotify.py → tests/unit/engines/test_spotify.py


+ 0 - 0
searx/tests/engines/test_stackoverflow.py → tests/unit/engines/test_stackoverflow.py


+ 0 - 0
searx/tests/engines/test_startpage.py → tests/unit/engines/test_startpage.py


+ 0 - 0
searx/tests/engines/test_subtitleseeker.py → tests/unit/engines/test_subtitleseeker.py


+ 0 - 0
searx/tests/engines/test_swisscows.py → tests/unit/engines/test_swisscows.py


+ 0 - 0
searx/tests/engines/test_twitter.py → tests/unit/engines/test_twitter.py


+ 0 - 0
searx/tests/engines/test_vimeo.py → tests/unit/engines/test_vimeo.py


+ 0 - 0
searx/tests/engines/test_www1x.py → tests/unit/engines/test_www1x.py


+ 0 - 0
searx/tests/engines/test_www500px.py → tests/unit/engines/test_www500px.py


+ 0 - 0
searx/tests/engines/test_yacy.py → tests/unit/engines/test_yacy.py


+ 0 - 0
searx/tests/engines/test_yahoo.py → tests/unit/engines/test_yahoo.py


+ 0 - 0
searx/tests/engines/test_yahoo_news.py → tests/unit/engines/test_yahoo_news.py


+ 0 - 0
searx/tests/engines/test_youtube_api.py → tests/unit/engines/test_youtube_api.py


+ 0 - 0
searx/tests/engines/test_youtube_noapi.py → tests/unit/engines/test_youtube_noapi.py


+ 0 - 0
searx/tests/test_plugins.py → tests/unit/test_plugins.py


+ 0 - 0
searx/tests/test_results.py → tests/unit/test_results.py


+ 0 - 0
searx/tests/test_search.py → tests/unit/test_search.py


+ 0 - 0
searx/tests/test_utils.py → tests/unit/test_utils.py


+ 0 - 0
searx/tests/test_webapp.py → tests/unit/test_webapp.py


+ 0 - 122
versions.cfg

@@ -1,122 +0,0 @@
-[versions]
-Babel = 1.3
-Flask = 0.10.1
-Flask-Babel = 0.9
-Jinja2 = 2.7.3
-MarkupSafe = 0.23
-Pygments = 2.0.2
-WebOb = 1.4.1
-WebTest = 2.0.18
-Werkzeug = 0.10.4
-collective.recipe.omelette = 0.16
-coverage = 3.7.1
-decorator = 3.4.2
-docutils = 0.12
-flake8 = 2.4.1
-itsdangerous = 0.24
-mccabe = 0.3.1
-mock = 1.0.1
-pep8 = 1.5.7
-plone.testing = 4.0.13
-pyflakes = 0.8.1
-pytz = 2015.4
-pyyaml = 3.11
-requests = 2.7.0
-robotframework-debuglibrary = 0.3
-robotframework-httplibrary = 0.4.2
-robotframework-selenium2library = 1.7.1
-robotsuite = 1.6.1
-selenium = 2.46.0
-speaklater = 1.3
-unittest2 = 1.0.1
-waitress = 0.8.9
-zc.recipe.testrunner = 2.0.0
-pyopenssl = 0.15.1
-ndg-httpsclient = 0.4.0
-pyasn1 = 0.1.8
-pyasn1-modules = 0.0.6
-certifi = 2015.11.20.1
-
-cffi = 1.1.2
-cryptography = 0.9.1
-
-# Required by:
-# robotsuite==1.6.1
-# searx==0.7.0
-lxml = 3.4.4
-
-# Required by:
-# searx==0.7.0
-python-dateutil = 2.4.2
-
-# Required by:
-# searx==0.7.0
-# zope.exceptions==4.0.7
-# zope.interface==4.1.2
-# zope.testrunner==4.4.9
-setuptools = 18.0.1
-
-# Required by:
-# WebTest==2.0.18
-beautifulsoup4 = 4.3.2
-
-# Required by:
-# cryptography==0.9.1
-enum34 = 1.0.4
-
-# Required by:
-# cryptography==0.9.1
-idna = 2.0
-
-# Required by:
-# cryptography==0.9.1
-ipaddress = 1.0.7
-
-# Required by:
-# robotframework-httplibrary==0.4.2
-jsonpatch = 1.11
-
-# Required by:
-# robotframework-httplibrary==0.4.2
-jsonpointer = 1.9
-
-# Required by:
-# traceback2==1.4.0
-linecache2 = 1.0.0
-
-# Required by:
-# cffi==1.1.2
-pycparser = 2.12
-
-# Required by:
-# robotframework-httplibrary==0.4.2
-robotframework = 2.8.7
-
-# Required by:
-# robotsuite==1.6.1
-# zope.testrunner==4.4.9
-six = 1.9.0
-
-# Required by:
-# unittest2==1.0.1
-traceback2 = 1.4.0
-
-# Required by:
-# collective.recipe.omelette==0.16
-zc.recipe.egg = 2.0.1
-
-# Required by:
-# zope.testrunner==4.4.9
-zope.exceptions = 4.0.7
-
-# Required by:
-# zope.testrunner==4.4.9
-zope.interface = 4.1.2
-
-# Required by:
-# plone.testing==4.0.13
-zope.testing = 4.2.0
-
-# Required by:
-# zc.recipe.testrunner==2.0.0
-zope.testrunner = 4.4.9