- Updated dark theme (#121) - Dark theme is no longer the previous high contrast "white on black" color scheme - New configuration settings - Split interface and result language config (#89) - Added option for using privacy respecting result alternatives (#106) - `youtube.com` -> `invidiou.site` - `twitter.com` -> `nitter.net` - `instagram.com` -> `bibliogram.art` - Improved search suggestion arrow key navigation behavior (#115) - Added repl.it deployment (#114) - Improved ad filtering for non-English results (f7380ae15d
) - Split interface and result language config (#89) - New config option: privacy respecting result alternatives (#106) - Updated search suggestion behavior (#115) - Minor project improvements and refactoring: - Added footer to results UI - Updated opensearch template - Various bug fixes, including: - Fixed pipx run command (#118) - Fixed browser autocomplete (#128) - Fixed missing autofocus on search field in Firefox (dfb1e81fa1
)
46 lines
1.1 KiB
Python
46 lines
1.1 KiB
Python
from app.models.config import Config
|
|
import json
|
|
import random
|
|
|
|
demo_config = {
|
|
'near': random.choice(['Seattle', 'New York', 'San Francisco']),
|
|
'dark_mode': str(random.getrandbits(1)),
|
|
'nojs': str(random.getrandbits(1)),
|
|
'lang_interface': random.choice(Config.LANGUAGES)['value'],
|
|
'lang_search': random.choice(Config.LANGUAGES)['value'],
|
|
'ctry': random.choice(Config.COUNTRIES)['value']
|
|
}
|
|
|
|
|
|
def test_main(client):
|
|
rv = client.get('/')
|
|
assert rv._status_code == 200
|
|
|
|
|
|
def test_search(client):
|
|
rv = client.get('/search?q=test')
|
|
assert rv._status_code == 200
|
|
|
|
|
|
def test_feeling_lucky(client):
|
|
rv = client.get('/search?q=!%20test')
|
|
assert rv._status_code == 303
|
|
|
|
|
|
def test_config(client):
|
|
rv = client.post('/config', data=demo_config)
|
|
assert rv._status_code == 302
|
|
|
|
rv = client.get('/config')
|
|
assert rv._status_code == 200
|
|
|
|
config = json.loads(rv.data)
|
|
for key in demo_config.keys():
|
|
assert config[key] == demo_config[key]
|
|
|
|
|
|
def test_opensearch(client):
|
|
rv = client.get('/opensearch.xml')
|
|
assert rv._status_code == 200
|
|
assert 'Whoogle' in str(rv.data)
|