比较 f# 中的 c# 实例对象
compare c# instance objects in f#
我是 F# 新手,正在尝试通过为 C# 库编写单元测试来学习 F#。
下面是示例 C# 代码 -
public class User
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class UserSelector
{
public User SelectUser()
{
return new User() { FirstName = "John", LastName = "Public" };
}
}
在 F# 中,我正在使用 xunit 编写单元测试 -
下面是示例 F# 代码 -
module UserSelectorTests =
[<Fact>]
let ``SelectUser Tests``() =
let actual = (new UserSelector()).SelectUser()
let expected = new User(FirstName = "John", LastName = "Public")
Assert.Equal(expected, actual)
尽管实际和预期相同,但测试失败。
关于如何在 F# 中比较对象有什么想法吗?
正如 Rene 在评论中提到的,用户 class 需要实施 Equals。
我是 F# 新手,正在尝试通过为 C# 库编写单元测试来学习 F#。
下面是示例 C# 代码 -
public class User
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class UserSelector
{
public User SelectUser()
{
return new User() { FirstName = "John", LastName = "Public" };
}
}
在 F# 中,我正在使用 xunit 编写单元测试 -
下面是示例 F# 代码 -
module UserSelectorTests =
[<Fact>]
let ``SelectUser Tests``() =
let actual = (new UserSelector()).SelectUser()
let expected = new User(FirstName = "John", LastName = "Public")
Assert.Equal(expected, actual)
尽管实际和预期相同,但测试失败。
关于如何在 F# 中比较对象有什么想法吗?
正如 Rene 在评论中提到的,用户 class 需要实施 Equals。