summaryrefslogtreecommitdiffstats
path: root/xbmc/utils/test/TestBase64.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'xbmc/utils/test/TestBase64.cpp')
-rw-r--r--xbmc/utils/test/TestBase64.cpp77
1 files changed, 77 insertions, 0 deletions
diff --git a/xbmc/utils/test/TestBase64.cpp b/xbmc/utils/test/TestBase64.cpp
new file mode 100644
index 0000000..8416378
--- /dev/null
+++ b/xbmc/utils/test/TestBase64.cpp
@@ -0,0 +1,77 @@
1/*
2 * Copyright (C) 2005-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
8
9#include "utils/Base64.h"
10
11#include <gtest/gtest.h>
12
13static const char refdata[] = "\x01\x02\x03\x04\x05\x06\x07\x08"
14 "\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10"
15 "\x11\x12\x13\x14\x15\x16\x17\x18"
16 "\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20"
17 "\x21\x22\x23\x24\x25\x26\x27\x28"
18 "\x29\x2a\x2b\x2c\x2d\x2e\x2f\x30";
19
20static const char refbase64data[] = "AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY"
21 "GRobHB0eHyAhIiMkJSYnKCkqKywtLi8w";
22
23TEST(TestBase64, Encode_1)
24{
25 std::string a;
26 Base64::Encode(refdata, sizeof(refdata) - 1, a);
27 EXPECT_STREQ(refbase64data, a.c_str());
28}
29
30TEST(TestBase64, Encode_2)
31{
32 std::string a;
33 a = Base64::Encode(refdata, sizeof(refdata) - 1);
34 EXPECT_STREQ(refbase64data, a.c_str());
35}
36
37TEST(TestBase64, Encode_3)
38{
39 std::string a;
40 Base64::Encode(refdata, a);
41 EXPECT_STREQ(refbase64data, a.c_str());
42}
43
44TEST(TestBase64, Encode_4)
45{
46 std::string a;
47 a = Base64::Encode(refdata);
48 EXPECT_STREQ(refbase64data, a.c_str());
49}
50
51TEST(TestBase64, Decode_1)
52{
53 std::string a;
54 Base64::Decode(refbase64data, sizeof(refbase64data) - 1, a);
55 EXPECT_STREQ(refdata, a.c_str());
56}
57
58TEST(TestBase64, Decode_2)
59{
60 std::string a;
61 a = Base64::Decode(refbase64data, sizeof(refbase64data) - 1);
62 EXPECT_STREQ(refdata, a.c_str());
63}
64
65TEST(TestBase64, Decode_3)
66{
67 std::string a;
68 Base64::Decode(refbase64data, a);
69 EXPECT_STREQ(refdata, a.c_str());
70}
71
72TEST(TestBase64, Decode_4)
73{
74 std::string a;
75 a = Base64::Decode(refbase64data);
76 EXPECT_STREQ(refdata, a.c_str());
77}