|
|
@@ -15,7 +15,7 @@ TEST_CONFIG = {
|
|
|
'USE_COLOR': 'False',
|
|
|
'SHOW_PROGRESS': 'False',
|
|
|
|
|
|
- 'OUTPUT_DIR': 'data.tests',
|
|
|
+ 'DATA_DIR': 'data.tests',
|
|
|
|
|
|
'SAVE_ARCHIVE_DOT_ORG': 'False',
|
|
|
'SAVE_TITLE': 'False',
|
|
|
@@ -27,12 +27,12 @@ TEST_CONFIG = {
|
|
|
'USE_YOUTUBEDL': 'False',
|
|
|
}
|
|
|
|
|
|
-OUTPUT_DIR = 'data.tests'
|
|
|
+DATA_DIR = 'data.tests'
|
|
|
os.environ.update(TEST_CONFIG)
|
|
|
|
|
|
from ..main import init
|
|
|
from ..index import load_main_index
|
|
|
-from ..config.legacy import (
|
|
|
+from archivebox.config.constants import (
|
|
|
SQL_INDEX_FILENAME,
|
|
|
JSON_INDEX_FILENAME,
|
|
|
HTML_INDEX_FILENAME,
|
|
|
@@ -101,22 +101,22 @@ def output_hidden(show_failing=True):
|
|
|
|
|
|
class TestInit(unittest.TestCase):
|
|
|
def setUp(self):
|
|
|
- os.makedirs(OUTPUT_DIR, exist_ok=True)
|
|
|
+ os.makedirs(DATA_DIR, exist_ok=True)
|
|
|
|
|
|
def tearDown(self):
|
|
|
- shutil.rmtree(OUTPUT_DIR, ignore_errors=True)
|
|
|
+ shutil.rmtree(DATA_DIR, ignore_errors=True)
|
|
|
|
|
|
def test_basic_init(self):
|
|
|
with output_hidden():
|
|
|
archivebox_init.main([])
|
|
|
|
|
|
- assert (Path(OUTPUT_DIR) / SQL_INDEX_FILENAME).exists()
|
|
|
- assert (Path(OUTPUT_DIR) / JSON_INDEX_FILENAME).exists()
|
|
|
- assert (Path(OUTPUT_DIR) / HTML_INDEX_FILENAME).exists()
|
|
|
- assert len(load_main_index(out_dir=OUTPUT_DIR)) == 0
|
|
|
+ assert (Path(DATA_DIR) / SQL_INDEX_FILENAME).exists()
|
|
|
+ assert (Path(DATA_DIR) / JSON_INDEX_FILENAME).exists()
|
|
|
+ assert (Path(DATA_DIR) / HTML_INDEX_FILENAME).exists()
|
|
|
+ assert len(load_main_index(out_dir=DATA_DIR)) == 0
|
|
|
|
|
|
def test_conflicting_init(self):
|
|
|
- with open(Path(OUTPUT_DIR) / 'test_conflict.txt', 'w+', encoding='utf-8') as f:
|
|
|
+ with open(Path(DATA_DIR) / 'test_conflict.txt', 'w+', encoding='utf-8') as f:
|
|
|
f.write('test')
|
|
|
|
|
|
try:
|
|
|
@@ -126,11 +126,11 @@ class TestInit(unittest.TestCase):
|
|
|
except SystemExit:
|
|
|
pass
|
|
|
|
|
|
- assert not (Path(OUTPUT_DIR) / SQL_INDEX_FILENAME).exists()
|
|
|
- assert not (Path(OUTPUT_DIR) / JSON_INDEX_FILENAME).exists()
|
|
|
- assert not (Path(OUTPUT_DIR) / HTML_INDEX_FILENAME).exists()
|
|
|
+ assert not (Path(DATA_DIR) / SQL_INDEX_FILENAME).exists()
|
|
|
+ assert not (Path(DATA_DIR) / JSON_INDEX_FILENAME).exists()
|
|
|
+ assert not (Path(DATA_DIR) / HTML_INDEX_FILENAME).exists()
|
|
|
try:
|
|
|
- load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ load_main_index(out_dir=DATA_DIR)
|
|
|
assert False, 'load_main_index should raise an exception when no index is present'
|
|
|
except Exception:
|
|
|
pass
|
|
|
@@ -138,36 +138,36 @@ class TestInit(unittest.TestCase):
|
|
|
def test_no_dirty_state(self):
|
|
|
with output_hidden():
|
|
|
init()
|
|
|
- shutil.rmtree(OUTPUT_DIR, ignore_errors=True)
|
|
|
+ shutil.rmtree(DATA_DIR, ignore_errors=True)
|
|
|
with output_hidden():
|
|
|
init()
|
|
|
|
|
|
|
|
|
class TestAdd(unittest.TestCase):
|
|
|
def setUp(self):
|
|
|
- os.makedirs(OUTPUT_DIR, exist_ok=True)
|
|
|
+ os.makedirs(DATA_DIR, exist_ok=True)
|
|
|
with output_hidden():
|
|
|
init()
|
|
|
|
|
|
def tearDown(self):
|
|
|
- shutil.rmtree(OUTPUT_DIR, ignore_errors=True)
|
|
|
+ shutil.rmtree(DATA_DIR, ignore_errors=True)
|
|
|
|
|
|
def test_add_arg_url(self):
|
|
|
with output_hidden():
|
|
|
archivebox_add.main(['https://getpocket.com/users/nikisweeting/feed/all'])
|
|
|
|
|
|
- all_links = load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ all_links = load_main_index(out_dir=DATA_DIR)
|
|
|
assert len(all_links) == 30
|
|
|
|
|
|
def test_add_arg_file(self):
|
|
|
- test_file = Path(OUTPUT_DIR) / 'test.txt'
|
|
|
+ test_file = Path(DATA_DIR) / 'test.txt'
|
|
|
with open(test_file, 'w+', encoding='utf') as f:
|
|
|
f.write(test_urls)
|
|
|
|
|
|
with output_hidden():
|
|
|
archivebox_add.main([test_file])
|
|
|
|
|
|
- all_links = load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ all_links = load_main_index(out_dir=DATA_DIR)
|
|
|
assert len(all_links) == 12
|
|
|
os.remove(test_file)
|
|
|
|
|
|
@@ -175,40 +175,40 @@ class TestAdd(unittest.TestCase):
|
|
|
with output_hidden():
|
|
|
archivebox_add.main([], stdin=test_urls)
|
|
|
|
|
|
- all_links = load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ all_links = load_main_index(out_dir=DATA_DIR)
|
|
|
assert len(all_links) == 12
|
|
|
|
|
|
|
|
|
class TestRemove(unittest.TestCase):
|
|
|
def setUp(self):
|
|
|
- os.makedirs(OUTPUT_DIR, exist_ok=True)
|
|
|
+ os.makedirs(DATA_DIR, exist_ok=True)
|
|
|
with output_hidden():
|
|
|
init()
|
|
|
archivebox_add.main([], stdin=test_urls)
|
|
|
|
|
|
# def tearDown(self):
|
|
|
- # shutil.rmtree(OUTPUT_DIR, ignore_errors=True)
|
|
|
+ # shutil.rmtree(DATA_DIR, ignore_errors=True)
|
|
|
|
|
|
|
|
|
def test_remove_exact(self):
|
|
|
with output_hidden():
|
|
|
archivebox_remove.main(['--yes', '--delete', 'https://example5.com/'])
|
|
|
|
|
|
- all_links = load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ all_links = load_main_index(out_dir=DATA_DIR)
|
|
|
assert len(all_links) == 11
|
|
|
|
|
|
def test_remove_regex(self):
|
|
|
with output_hidden():
|
|
|
archivebox_remove.main(['--yes', '--delete', '--filter-type=regex', r'http(s)?:\/\/(.+\.)?(example\d\.com)'])
|
|
|
|
|
|
- all_links = load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ all_links = load_main_index(out_dir=DATA_DIR)
|
|
|
assert len(all_links) == 4
|
|
|
|
|
|
def test_remove_domain(self):
|
|
|
with output_hidden():
|
|
|
archivebox_remove.main(['--yes', '--delete', '--filter-type=domain', 'example5.com', 'example6.com'])
|
|
|
|
|
|
- all_links = load_main_index(out_dir=OUTPUT_DIR)
|
|
|
+ all_links = load_main_index(out_dir=DATA_DIR)
|
|
|
assert len(all_links) == 10
|
|
|
|
|
|
def test_remove_none(self):
|