Я включил покрытие кода для своих модульных тестов, но для одной структуры я не могу набрать 100%, хотя я считаю, что я тестирую все возможные пути кода.
Моя структура имеет вычисляемое свойство, определенное как:
var nativeSize: CGSize {
if rotated {
return targetRect.size.rotated
} else {
return targetRect.size
}
}
(Здесь targetRect
- это хранимое свойство той же структуры, типа CGRect
, self.rotated
- это хранимое логическое свойство, а self.size.rotated
- это вычисляемое свойство в расширении CGSize
, которое просто возвращает копию с width
и height
взаимозаменяемыми)
Мой код модульного теста создает два экземпляра структуры, один с rotated
установленным на true
, а другой с false
, и получает доступ к этому свойству nativeSize
в каждом (чтобы охватить оба пути кода) , утверждая их равенства ожидаемым значениям.
Однако, я получаю только 95,5% покрытия для структуры. В редакторе кода это выделено так:
(это единственная красная область во всем исходном файле)
Это ошибка XCode или я что-то упустил?