Files
divkit/client/ios/DivKitTestsSupport/FakeImageHolder.swift
T
babaevmm b3f56e42aa fix wrap_content image cases
commit_hash:5f4993e7fd9f8562778179b44e12593b320494b0
2025-10-21 12:22:49 +03:00

41 lines
1.0 KiB
Swift

import DivKit
import Foundation
import VGSL
public final class FakeImageHolderFactory: DivImageHolderFactory {
public init() {}
public func make(_: URL?, _: ImagePlaceholder?) -> ImageHolder {
FakeImageHolder()
}
}
public final class FakeImageHolder: ImageHolder {
public var image: Image?
public var placeholder: ImagePlaceholder?
public var debugDescription: String {
"FakeImageHolder(image: \(String(describing: image)), placeholder: \(String(describing: placeholder)))"
}
public init(image: Image? = nil, placeholder: ImagePlaceholder? = nil) {
self.image = image
self.placeholder = placeholder
}
public func requestImageWithCompletion(_ completion: @escaping @MainActor (Image?) -> Void)
-> Cancellable? {
completion(image)
return nil
}
public func reused(with _: ImagePlaceholder?, remoteImageURL _: URL?) -> ImageHolder? {
nil
}
public func equals(_ other: ImageHolder) -> Bool {
guard let other = other as? FakeImageHolder else { return false }
return self.image === other.image
}
}