Skip to content

Commit c9d44d2

Browse files
authored
Merge pull request #134 from openzim/offline-tests
OFFLINE environ skips network-using tests
2 parents 0b250d5 + 6e2f65b commit c9d44d2

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

tests/test_libzim_reader.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,10 @@
236236
},
237237
}
238238

239+
skip_if_offline = pytest.mark.skipif(
240+
bool(os.getenv("OFFLINE")), reason="OFFLINE environ requested offline-only"
241+
)
242+
239243

240244
def get_pytest_param(name, *fields):
241245
args = [ZIMS_DATA[name].get(field, f"MISSING-VALUE {field}") for field in fields]
@@ -290,6 +294,7 @@ def test_open_badfile(tmpdir):
290294
Archive(fpath)
291295

292296

297+
@skip_if_offline
293298
def test_content_ref_keep(all_zims):
294299
"""Get the memoryview on a content and loose the reference on the article.
295300
We try to load a lot of other articles to detect possible use of dandling pointer
@@ -319,6 +324,7 @@ def get_content():
319324
)
320325

321326

327+
@skip_if_offline
322328
@pytest.mark.parametrize(
323329
*parametrize_for(["filename", "filesize", "new_ns", "mutlipart", "zim_uuid"])
324330
)
@@ -342,6 +348,7 @@ def test_reader_archive(all_zims, filename, filesize, new_ns, mutlipart, zim_uui
342348
assert zim.uuid.hex == zim_uuid
343349

344350

351+
@skip_if_offline
345352
@pytest.mark.parametrize(
346353
*parametrize_for(
347354
["filename", "metadata_keys", "test_metadata", "test_metadata_value"]
@@ -362,6 +369,7 @@ def test_reader_metadata(
362369
assert item.size > 1
363370

364371

372+
@skip_if_offline
365373
@pytest.mark.parametrize(
366374
*parametrize_for(["filename", "new_ns", "has_main_entry", "has_favicon_entry"])
367375
)
@@ -397,6 +405,7 @@ def test_reader_main_favicon_entries(
397405
assert zim.get_metadata_item("Illustration_48x48@1").mimetype == "image/png"
398406

399407

408+
@skip_if_offline
400409
@pytest.mark.parametrize(
401410
*parametrize_for(["filename", "has_fulltext_index", "has_title_index"])
402411
)
@@ -408,6 +417,7 @@ def test_reader_has_index(all_zims, filename, has_fulltext_index, has_title_inde
408417
assert zim.has_title_index is has_title_index
409418

410419

420+
@skip_if_offline
411421
@pytest.mark.parametrize(*parametrize_for(["filename", "has_checksum", "is_valid"]))
412422
def test_reader_checksum(all_zims, filename, has_checksum, is_valid):
413423
zim = Archive(all_zims / filename)
@@ -420,6 +430,7 @@ def test_reader_checksum(all_zims, filename, has_checksum, is_valid):
420430
assert zim.check() is is_valid
421431

422432

433+
@skip_if_offline
423434
@pytest.mark.parametrize(
424435
*parametrize_for(
425436
[
@@ -470,6 +481,7 @@ def test_reader_suggest_search(
470481
assert list(suggestion.getResults(0, suggestion_count)) == suggestion_result
471482

472483

484+
@skip_if_offline
473485
@pytest.mark.parametrize(
474486
*parametrize_for(
475487
[
@@ -525,6 +537,7 @@ def test_reader_get_entries(
525537
assert zim.get_entry_by_title(test_title).path == entry.path
526538

527539

540+
@skip_if_offline
528541
@pytest.mark.parametrize(
529542
*parametrize_for(["filename", "test_redirect", "test_redirect_to"])
530543
)
@@ -545,6 +558,7 @@ def test_reader_redirect(all_zims, filename, test_redirect, test_redirect_to):
545558
target_entry.get_redirect_entry().get_redirect_entry()
546559

547560

561+
@skip_if_offline
548562
@pytest.mark.parametrize(*parametrize_for(["filename"]))
549563
def test_reader_by_id(all_zims, filename):
550564
zim = Archive(all_zims / filename)
@@ -555,6 +569,7 @@ def test_reader_by_id(all_zims, filename):
555569
assert zim._get_entry_by_id(index).get_item()._index >= 0
556570

557571

572+
@skip_if_offline
558573
def test_archive_equality(all_zims):
559574
class Different:
560575
def __init__(self, filename):

0 commit comments

Comments
 (0)