MockSearchOperation.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using System;
  2. using System.Collections.Generic;
  3. namespace UnityEditor.PackageManager.UI.Tests
  4. {
  5. internal class MockSearchOperation : MockOperation, ISearchOperation
  6. {
  7. public new event Action<Error> OnOperationError = delegate { };
  8. public new event Action OnOperationFinalized = delegate { };
  9. public IEnumerable<PackageInfo> Packages { get; set; }
  10. public MockSearchOperation(MockOperationFactory factory, IEnumerable<PackageInfo> packages) : base(factory)
  11. {
  12. Packages = packages;
  13. }
  14. public void GetAllPackageAsync(Action<IEnumerable<PackageInfo>> doneCallbackAction = null, Action<Error> errorCallbackAction = null)
  15. {
  16. if (ForceError != null)
  17. {
  18. if (errorCallbackAction != null)
  19. errorCallbackAction(ForceError);
  20. IsCompleted = true;
  21. OnOperationError(ForceError);
  22. }
  23. else
  24. {
  25. if (doneCallbackAction != null)
  26. doneCallbackAction(Packages);
  27. IsCompleted = true;
  28. }
  29. OnOperationFinalized();
  30. }
  31. }
  32. }