uber / mockolo

Efficient Mock Generator for Swift
Apache License 2.0
813 stars 86 forks source link

Avoid to generate duplicated variable name #231

Closed fummicc1 closed 1 year ago

fummicc1 commented 1 year ago

Overview

If mockable has multiple initializer which have same parameter name, output mock can't be built due to conflict of variable name.

This fix aims to solve #224 .

After fix

/// @mockable
protocol MyProtocol {
    init(param: Any)
    init(param: String)
    init(param: any Sequence<Character>)
}
class MyProtocolMock: MyProtocol {
        private var _param: Any!
    init() { }
    required init(param: Any) {
        self._param = param
    }
    required init(param: String = "") {
        self._param = param
    }
    required init(param: any Sequence<Character>) {
        self._param = param
    }

}