请求实现唯一的id属性,该属性通过一次添加到集合进行测试

时间:2018-09-12 12:29:32

标签: groovy unique requirements

我最近在一次求职面试的代码挑战中为编程任务而苦苦挣扎:有一个Flight类,其属性为final String flightNo。最初flightNo是在构造函数中传递的。

任务是确保航班号唯一(没有更多信息),并且仅更改Flight中的代码。但是,测试了groovy spock测试(有关更多信息,请参见https://www.baeldung.com/groovy-spock

given:
    Flight flight0 = new Flight("FN123")
    FlightManager flightManager = ...
    flightManager.addNewFlight(flight0)
when:
    Flight flight1 = new Flight("FN123")
    boolean added = flightManager.addNewFlight(flight1)
then:
    !added

FlightManager.addNewFlightFlight添加到Set中。我没有太多时间了,对Spock测试语法还是陌生的(与此同时,我很喜欢这个主意)。

之后,我发现如果我基于Flight.equals实现hashCodeflightNo,则测试通过。

寻找描述的解决方案时,要求航班号唯一(没有更多信息)是否正确?

0 个答案:

没有答案