Swift XCTAssertEqual (Float) завершается ошибкой при прямой передаче геттера - PullRequest
0 голосов
/ 15 февраля 2019

Я столкнулся с очень странной ошибкой во время модульного тестирования Xcode Swift.Когда я сохраняю значение Float метода получения, оно работает, но когда я передаю тот же метод получения в XCTAssertEqual, оно завершается ошибкой, потому что значение, которое получает функция XCT, равно 0, а не фактическому вычисленному значению (в данном случае800).

Кто-нибудь сталкивался с этим?

// Rectangle.width = get { return left - right }

let w = metrics.imageDestinationRectangle.width
let h = metrics.imageDestinationRectangle.height

// these work okay
XCTAssertEqual(w, 800, accuracy: 0.001) 
XCTAssertEqual(h, 533, accuracy: 0.001)

// these fail: "0" is not equal to "800"
XCTAssertEqual(metrics.imageDestinationRectangle.width, 800, accuracy: 0.001)
XCTAssertEqual(metrics.imageDestinationRectangle.height, 533, accuracy: 0.001)

1 Ответ

0 голосов
/ 15 февраля 2019

Ну, я не знаю, что случилось, но я сделал другое связанное кодирование, затем попытался поместить геттеры непосредственно в параметры XCTAssertEqual, и это удалось.Ни один из кодов не изменился.Странно!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...