public static Stream<Arguments> canExecute() {
VM upVm = new VM();
upVm.setStatus(VMStatus.Up);
VM downVm = new VM();
downVm.setStatus(VMStatus.Down);
VDS upVds = new VDS();
upVds.setStatus(VDSStatus.Up);
VDS downVds = new VDS();
downVds.setStatus(VDSStatus.Down);
StorageDomain upStorageDomain = new StorageDomain();
upStorageDomain.setStatus(StorageDomainStatus.Active);
StorageDomain downStorageDomain = new StorageDomain();
downStorageDomain.setStatus(StorageDomainStatus.Inactive);
return Stream.of(
Arguments.of(upVm, ActionType.MigrateVm, true),
Arguments.of(downVm, ActionType.MigrateVm, false),
Arguments.of(upVds, ActionType.RefreshHostCapabilities, true),
Arguments.of(downVds, ActionType.RefreshHostCapabilities, false),
Arguments.of(upStorageDomain, ActionType.DeactivateStorageDomainWithOvfUpdate, true),
Arguments.of(downStorageDomain, ActionType.DetachStorageDomainFromPool, false),
Arguments.of(new StoragePool(), ActionType.UpdateStoragePool, true)
);
}