          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
      )

         Extension(
             name='_watchdog_fsevents',
diff --git a/tests/test_emitter.py b/tests/test_emitter.py
index bec052c..ed5c465 100644
--- a/tests/test_emitter.py
+++ b/tests/test_emitter.py
@@ -42,13 +42,11 @@ if platform.is_linux():

     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
