Serenity Operating System
1/*
2 * Copyright (c) 2021, the SerenityOS developers.
3 *
4 * SPDX-License-Identifier: BSD-2-Clause
5 */
6
7#include <LibTest/TestCase.h>
8
9#include <AK/DoublyLinkedList.h>
10
11static DoublyLinkedList<int> make_list()
12{
13 DoublyLinkedList<int> list {};
14 list.append(0);
15 list.append(1);
16 list.append(2);
17 list.append(3);
18 list.append(4);
19 list.append(5);
20 list.append(6);
21 list.append(7);
22 list.append(8);
23 list.append(9);
24 return list;
25}
26
27TEST_CASE(should_find_mutable)
28{
29 auto sut = make_list();
30
31 EXPECT_EQ(4, *sut.find(4));
32
33 EXPECT_EQ(sut.end(), sut.find(42));
34}
35
36TEST_CASE(should_find_const)
37{
38 auto const sut = make_list();
39
40 EXPECT_EQ(4, *sut.find(4));
41
42 EXPECT_EQ(sut.end(), sut.find(42));
43}