def _test_signals_scenario(self, handler, expected):
        A.objects.create()
        self.synchronize()
        b = A.objects.db_manager(REMOTE).all()[0]
        b.foo = 42
        b.save()
        self.wait()
        post_save.connect(handler, sender=X, dispatch_uid='update_bar')
        X.objects.create(name='X')
        self.synchronize()
        a = A.objects.all()[0]
        b = A.objects.db_manager(REMOTE).all()[0]
        self.assertEqual(2, a.bar)  # handler was invoked
        self.assertEqual(2, b.bar)  # handler was invoked
        self.assertEqual(1, a.foo)
        self.assertEqual(expected, b.foo)
        post_save.disconnect(sender=X, dispatch_uid='update_bar')
Scenario from README.
dataset/ETHPy150Open zlorf/django-synchro/synchro/tests.py/SignalSynchroTests._test_signals_scenario