def test_sync_update_action(): account = Account(MagicMock()) service1 = "test_service1" mockUpdateCallback = MagicMock() account.setSyncState(service1, SyncState.SYNCING) assert account.syncState == SyncState.SYNCING account.setUpdatePackagesAction(mockUpdateCallback) account.onUpdatePackagesClicked() mockUpdateCallback.assert_called_once_with() account.setSyncState(service1, SyncState.SUCCESS) account.sync() # starting a new sync resets the update action to None account.setSyncState(service1, SyncState.SYNCING) assert account.syncState == SyncState.SYNCING account.onUpdatePackagesClicked( ) # Should not be connected to an action anymore mockUpdateCallback.assert_called_once_with() # No additional calls assert account.updatePackagesEnabled is False account.setSyncState(service1, SyncState.SUCCESS)
def test_sync_success(): account = Account(MagicMock()) service1 = "test_service1" service2 = "test_service2" account.setSyncState(service1, SyncState.SYNCING) assert account.syncState == SyncState.SYNCING account.setSyncState(service2, SyncState.SYNCING) assert account.syncState == SyncState.SYNCING account.setSyncState(service1, SyncState.SUCCESS) # service2 still syncing assert account.syncState == SyncState.SYNCING account.setSyncState(service2, SyncState.SUCCESS) assert account.syncState == SyncState.SUCCESS