mirror of
https://github.com/searxng/searxng.git
synced 2025-07-22 12:49:22 +02:00
tests and robot tests framework, build overhaul
This commit is contained in:
parent
348187cff9
commit
e740c8a8ea
17 changed files with 732 additions and 5 deletions
59
searx/testing.py
Normal file
59
searx/testing.py
Normal file
|
@ -0,0 +1,59 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
"""Shared testing code."""
|
||||
|
||||
from plone.testing import Layer
|
||||
from unittest2 import TestCase
|
||||
|
||||
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
|
||||
class SearxTestLayer:
|
||||
|
||||
__name__ = u'SearxTestLayer'
|
||||
|
||||
def setUp(cls):
|
||||
pass
|
||||
setUp = classmethod(setUp)
|
||||
|
||||
def tearDown(cls):
|
||||
pass
|
||||
tearDown = classmethod(tearDown)
|
||||
|
||||
def testSetUp(cls):
|
||||
pass
|
||||
testSetUp = classmethod(testSetUp)
|
||||
|
||||
def testTearDown(cls):
|
||||
pass
|
||||
testTearDown = classmethod(testTearDown)
|
||||
|
||||
|
||||
class SearxRobotLayer(Layer):
|
||||
"""Searx Robot Test Layer"""
|
||||
|
||||
def setUp(self):
|
||||
os.setpgrp() # create new process group, become its leader
|
||||
webapp = os.path.join(
|
||||
os.path.abspath(os.path.dirname(os.path.realpath(__file__))),
|
||||
'webapp.py'
|
||||
)
|
||||
exe = os.path.abspath(os.path.dirname(__file__) + '/../bin/py')
|
||||
self.server = subprocess.Popen(
|
||||
[exe, webapp, 'settings_robot'],
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.STDOUT
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
# TERM all processes in my group
|
||||
os.killpg(os.getpgid(self.server.pid), 15)
|
||||
|
||||
|
||||
SEARXROBOTLAYER = SearxRobotLayer()
|
||||
|
||||
|
||||
class SearxTestCase(TestCase):
|
||||
layer = SearxTestLayer
|
Loading…
Add table
Add a link
Reference in a new issue