领域:不在单元测试中工作

时间:2016-01-21 10:25:31

标签: swift realm xctest

我在Swift项目中使用Realm并且有一种奇怪的行为。我从模型中查询测试中的属性。我可以在断点中看到属性的正确值,但测试会收到一个空字符串。有什么想法吗?

型号:

func userName()->String{

    if let userData = self.realm.objects(UserData).first{
        return userData.userName
    }
    return "-"
}

测试:

let userName = userModel.userName()            
XCTAssert(userName == "user@test.com")

- > userName是"",但行return userData.userName中的断点表示" user@test.com"。 如果我将return userData.userName替换为return "test",它会按预期工作。所以问题是当另一个方法查询它时,领域对象内的当前值会丢失。

如果我打印userdata.useName,我现在得到""如果我检查userData的属性是空的。但是,如果我点击userData上的小(i)我可以看到所有属性......

if let userData = self.realm.objects(UserData).first{

            print("start>")
            print(userData.userName)
            print("<finish")

            return userData.userName
        }

0 个答案:

没有答案