Page 1 of 1

Inkonsistente Quellausgabe für Protokolle mit zugeordneten Typen

Posted: 03 Jan 2025, 07:06
by Guest
Ich verwende Sourcery in meinem iOS-Projekt, um Mocks für ein Protokoll zu generieren, das einem anderen Protokoll mit zugehörigen Typen entspricht. Trotz konsistenter Eingabe ist die generierte Ausgabe von Sourcery nicht konsistent. Manchmal ist die Ausgabe korrekt, aber manchmal ist sie falsch, da Mock als Klasse nur mit init definiert wird.
Hier ist meine AutoMockable.stencil: https:/ /gist.github.com/levan9999/212647d48ef372e025d5794543ab303c
Hier ist mein Setup:

Code: Select all

public protocol Foo {
associatedtype Input
associatedtype Output
associatedtype Failure: Error

@discardableResult
func bar(parameters: Input) -> AnyPublisher
}

// sourcery: AutoMockable
public protocol Bar: Foo
where Input == String,
Output == Bool,
Failure == Never { }
Ausgabe:

Code: Select all

public class Bar: Foo {
public init() {}
}
Wie kann ich sicherstellen, dass Sourcery konsistent den richtigen Mock für Protokolle mit zugehörigen Typen und Typeinschränkungen generiert?