From cca5439be1d772e67b7f5d48db572df90b02d41e Mon Sep 17 00:00:00 2001 From: Leonetienne Date: Mon, 14 Mar 2022 12:17:15 +0100 Subject: Added padding functionality --- Test/.String__PadRight.cpp.swp | Bin 0 -> 12288 bytes Test/CMakeLists.txt | 1 + Test/String__PadLeft.cpp | 44 +++++++++++++++++++++++++++++++++++++++++ Test/String__PadRight.cpp | 44 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 89 insertions(+) create mode 100644 Test/.String__PadRight.cpp.swp create mode 100644 Test/String__PadLeft.cpp create mode 100644 Test/String__PadRight.cpp (limited to 'Test') diff --git a/Test/.String__PadRight.cpp.swp b/Test/.String__PadRight.cpp.swp new file mode 100644 index 0000000..de26dae Binary files /dev/null and b/Test/.String__PadRight.cpp.swp differ diff --git a/Test/CMakeLists.txt b/Test/CMakeLists.txt index 41ad3c9..dca5870 100644 --- a/Test/CMakeLists.txt +++ b/Test/CMakeLists.txt @@ -16,6 +16,7 @@ add_executable(Test String__Replace_Char.cpp String__Replace_String.cpp String__Split.cpp + String__PadLeft.cpp # CharTools-Tests Char__IsVowel.cpp diff --git a/Test/String__PadLeft.cpp b/Test/String__PadLeft.cpp new file mode 100644 index 0000000..e424e42 --- /dev/null +++ b/Test/String__PadLeft.cpp @@ -0,0 +1,44 @@ +#include +#include "Catch2.h" + +// Tests that padding to a length shorter adds no padding +TEST_CASE(__FILE__"/PadToShorterLength", "[Strings][PadLeft]") +{ + // Setup + const std::string in = "hello"; + + // Exercise + const std::string out = StringTools::PadLeft(in, '0', 3); + + // Verify + REQUIRE(out == "hello"); + return; +} + +// Tests that padding to a length equal adds no padding +TEST_CASE(__FILE__"/PadToEqualLength", "[Strings][PadLeft]") +{ + // Setup + const std::string in = "hello"; + + // Exercise + const std::string out = StringTools::PadLeft(in, '0', 5); + + // Verify + REQUIRE(out == "hello"); + return; +} + +// Tests that adding padding works +TEST_CASE(__FILE__"/Padding", "[Strings][PadLeft]") +{ + // Setup + const std::string in = "hello"; + + // Exercise + const std::string out = StringTools::PadLeft(in, '0', 7); + + // Verify + REQUIRE(out == "00hello"); + return; +} diff --git a/Test/String__PadRight.cpp b/Test/String__PadRight.cpp new file mode 100644 index 0000000..6846454 --- /dev/null +++ b/Test/String__PadRight.cpp @@ -0,0 +1,44 @@ +#include +#include "Catch2.h" + +// Tests that padding to a length shorter adds no padding +TEST_CASE(__FILE__"/PadToShorterLength", "[Strings][PadRight]") +{ + // Setup + const std::string in = "hello"; + + // Exercise + const std::string out = StringTools::PadRight(in, '0', 3); + + // Verify + REQUIRE(out == "hello"); + return; +} + +// Tests that padding to a length equal adds no padding +TEST_CASE(__FILE__"/PadToEqualLength", "[Strings][PadRight]") +{ + // Setup + const std::string in = "hello"; + + // Exercise + const std::string out = StringTools::PadRight(in, '0', 5); + + // Verify + REQUIRE(out == "hello"); + return; +} + +// Tests that adding padding works +TEST_CASE(__FILE__"/Padding", "[Strings][PadRight]") +{ + // Setup + const std::string in = "hello"; + + // Exercise + const std::string out = StringTools::PadRight(in, '0', 7); + + // Verify + REQUIRE(out == "hello00"); + return; +} -- cgit v1.2.3