Serenity Operating System
at master 61 lines 2.2 kB view raw
1/* 2 * Copyright (c) 2020, the SerenityOS developers. 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#include <LibTest/TestCase.h> 8 9#include <AK/Hex.h> 10 11TEST_CASE(should_decode_hex_digit) 12{ 13 EXPECT_EQ(0u, decode_hex_digit('0')); 14 EXPECT_EQ(1u, decode_hex_digit('1')); 15 EXPECT_EQ(2u, decode_hex_digit('2')); 16 EXPECT_EQ(3u, decode_hex_digit('3')); 17 EXPECT_EQ(4u, decode_hex_digit('4')); 18 EXPECT_EQ(5u, decode_hex_digit('5')); 19 EXPECT_EQ(6u, decode_hex_digit('6')); 20 EXPECT_EQ(7u, decode_hex_digit('7')); 21 EXPECT_EQ(8u, decode_hex_digit('8')); 22 EXPECT_EQ(9u, decode_hex_digit('9')); 23 EXPECT_EQ(10u, decode_hex_digit('a')); 24 EXPECT_EQ(11u, decode_hex_digit('b')); 25 EXPECT_EQ(12u, decode_hex_digit('c')); 26 EXPECT_EQ(13u, decode_hex_digit('d')); 27 EXPECT_EQ(14u, decode_hex_digit('e')); 28 EXPECT_EQ(15u, decode_hex_digit('f')); 29 EXPECT_EQ(10u, decode_hex_digit('A')); 30 EXPECT_EQ(11u, decode_hex_digit('B')); 31 EXPECT_EQ(12u, decode_hex_digit('C')); 32 EXPECT_EQ(13u, decode_hex_digit('D')); 33 EXPECT_EQ(14u, decode_hex_digit('E')); 34 EXPECT_EQ(15u, decode_hex_digit('F')); 35} 36 37TEST_CASE(should_constexpr_decode_hex_digit) 38{ 39 static_assert(0u == decode_hex_digit('0')); 40 static_assert(1u == decode_hex_digit('1')); 41 static_assert(2u == decode_hex_digit('2')); 42 static_assert(3u == decode_hex_digit('3')); 43 static_assert(4u == decode_hex_digit('4')); 44 static_assert(5u == decode_hex_digit('5')); 45 static_assert(6u == decode_hex_digit('6')); 46 static_assert(7u == decode_hex_digit('7')); 47 static_assert(8u == decode_hex_digit('8')); 48 static_assert(9u == decode_hex_digit('9')); 49 static_assert(10u == decode_hex_digit('a')); 50 static_assert(11u == decode_hex_digit('b')); 51 static_assert(12u == decode_hex_digit('c')); 52 static_assert(13u == decode_hex_digit('d')); 53 static_assert(14u == decode_hex_digit('e')); 54 static_assert(15u == decode_hex_digit('f')); 55 static_assert(10u == decode_hex_digit('A')); 56 static_assert(11u == decode_hex_digit('B')); 57 static_assert(12u == decode_hex_digit('C')); 58 static_assert(13u == decode_hex_digit('D')); 59 static_assert(14u == decode_hex_digit('E')); 60 static_assert(15u == decode_hex_digit('F')); 61}