python3Packages.watchdog: treat more tests as bsd

main
Phillip Cloud 2 years ago
parent 20a7e7eb0a
commit 614aa6d016
No known key found for this signature in database
GPG Key ID: D908212070FD785E
  1. 94
      pkgs/development/python-modules/watchdog/force-kqueue.patch

@ -12,7 +12,7 @@ index 072dfc8..64732bb 100644
Extension(
name='_watchdog_fsevents',
diff --git a/tests/test_emitter.py b/tests/test_emitter.py
index bec052c..ed5c465 100644
index bec052c..242fbea 100644
--- a/tests/test_emitter.py
+++ b/tests/test_emitter.py
@@ -42,13 +42,11 @@ if platform.is_linux():
@ -26,7 +26,7 @@ index bec052c..ed5c465 100644
WindowsApiEmitter as Emitter
)
-elif platform.is_bsd():
+elif platform.is_darwin() or platform.is_bsd():
+elif platform.is_bsd() or platform.is_darwin():
from watchdog.observers.kqueue import (
KqueueEmitter as Emitter
)
@ -53,6 +53,96 @@ index bec052c..ed5c465 100644
emitter.start()
@@ -345,7 +334,7 @@ def test_separate_consecutive_moves():
if platform.is_windows():
expected_events = [a_deleted, d_created]
- if platform.is_bsd():
+ if platform.is_bsd() or platform.is_darwin():
# Due to the way kqueue works, we can't really order
# 'Created' and 'Deleted' events in time, so creation queues first
expected_events = [d_created, a_deleted, dir_modif, dir_modif]
@@ -355,7 +344,7 @@ def test_separate_consecutive_moves():
@pytest.mark.flaky(max_runs=5, min_passes=1, rerun_filter=rerun_filter)
-@pytest.mark.skipif(platform.is_bsd(), reason="BSD create another set of events for this test")
+@pytest.mark.skipif(platform.is_bsd() or platform.is_darwin(), reason="BSD create another set of events for this test")
def test_delete_self():
mkdir(p('dir1'))
start_watching(p('dir1'))
@@ -365,7 +354,7 @@ def test_delete_self():
assert not emitter.is_alive()
-@pytest.mark.skipif(platform.is_windows() or platform.is_bsd(),
+@pytest.mark.skipif(platform.is_windows() or platform.is_bsd() or platform.is_darwin(),
reason="Windows|BSD create another set of events for this test")
def test_fast_subdirectory_creation_deletion():
root_dir = p('dir1')
@@ -429,7 +418,7 @@ def test_recursive_on():
assert event.src_path == p('dir1', 'dir2', 'dir3')
assert isinstance(event, DirModifiedEvent)
- if not platform.is_bsd():
+ if not (platform.is_bsd() or platform.is_darwin()):
event = event_queue.get(timeout=5)[0]
assert event.src_path == p('dir1', 'dir2', 'dir3', 'a')
assert isinstance(event, FileModifiedEvent)
@@ -452,26 +441,6 @@ def test_recursive_off():
if platform.is_linux():
expect_event(FileClosedEvent(p('b')))
- # currently limiting these additional events to macOS only, see https://github.com/gorakhargosh/watchdog/pull/779
- if platform.is_darwin():
- mkdir(p('dir1', 'dir2'))
- with pytest.raises(Empty):
- event_queue.get(timeout=5)
- mkfile(p('dir1', 'dir2', 'somefile'))
- with pytest.raises(Empty):
- event_queue.get(timeout=5)
-
- mkdir(p('dir3'))
- expect_event(DirModifiedEvent(p())) # the contents of the parent directory changed
-
- mv(p('dir1', 'dir2', 'somefile'), p('somefile'))
- expect_event(FileMovedEvent(p('dir1', 'dir2', 'somefile'), p('somefile')))
- expect_event(DirModifiedEvent(p()))
-
- mv(p('dir1', 'dir2'), p('dir2'))
- expect_event(DirMovedEvent(p('dir1', 'dir2'), p('dir2')))
- expect_event(DirModifiedEvent(p()))
-
@pytest.mark.skipif(platform.is_windows(),
reason="Windows create another set of events for this test")
@@ -493,7 +462,7 @@ def test_renaming_top_level_directory():
expect_event(DirMovedEvent(p('a', 'b'), p('a2', 'b')))
- if platform.is_bsd():
+ if platform.is_bsd() or platform.is_darwin():
expect_event(DirModifiedEvent(p()))
open(p('a2', 'b', 'c'), 'a').close()
@@ -584,7 +553,7 @@ def test_move_nested_subdirectories():
expect_event(DirMovedEvent(p('dir1', 'dir2', 'dir3'), p('dir2', 'dir3')))
expect_event(FileMovedEvent(p('dir1', 'dir2', 'dir3', 'a'), p('dir2', 'dir3', 'a')))
- if platform.is_bsd():
+ if platform.is_bsd() or platform.is_darwin():
event = event_queue.get(timeout=5)[0]
assert p(event.src_path) == p()
assert isinstance(event, DirModifiedEvent)
@@ -643,7 +612,7 @@ def test_move_nested_subdirectories_on_windows():
@pytest.mark.flaky(max_runs=5, min_passes=1, rerun_filter=rerun_filter)
-@pytest.mark.skipif(platform.is_bsd(), reason="BSD create another set of events for this test")
+@pytest.mark.skipif(platform.is_bsd() or platform.is_darwin(), reason="BSD create another set of events for this test")
def test_file_lifecyle():
start_watching()
diff --git a/tests/test_fsevents.py b/tests/test_fsevents.py
index 4a4fabf..49886a1 100644
--- a/tests/test_fsevents.py

Loading…
Cancel
Save