Initial Course
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
#include "basic_io.hpp"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
TEST(BasicIo, JoinWords) {
|
||||
EXPECT_EQ(fundamentals::join_words({"C", "Plus", "Plus"}, '-'), "C-Plus-Plus");
|
||||
EXPECT_EQ(fundamentals::join_words({"solo"}, ','), "solo");
|
||||
EXPECT_EQ(fundamentals::join_words({}, ','), "");
|
||||
}
|
||||
|
||||
TEST(BasicIo, ParseIntegers) {
|
||||
EXPECT_EQ(fundamentals::parse_integers("1,2,3"), (std::vector<int>{1, 2, 3}));
|
||||
EXPECT_EQ(fundamentals::parse_integers("42"), (std::vector<int>{42}));
|
||||
}
|
||||
|
||||
TEST(BasicIo, FormatScore) {
|
||||
EXPECT_EQ(fundamentals::format_score("Alice", 150), "Alice scored 150 points");
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include "hello_world.hpp"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
TEST(HelloWorld, GreetsByName) {
|
||||
EXPECT_STREQ(fundamentals::greet("Ada"), "Hello, Ada!");
|
||||
EXPECT_STREQ(fundamentals::greet("Bjarne"), "Hello, Bjarne!");
|
||||
}
|
||||
|
||||
TEST(HelloWorld, ExitSuccessIsZero) {
|
||||
EXPECT_EQ(fundamentals::program_exit_success(), 0);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
#include "operators.hpp"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
TEST(Operators, AbsoluteDifference) {
|
||||
EXPECT_EQ(fundamentals::absolute_difference(5, 9), 4);
|
||||
EXPECT_EQ(fundamentals::absolute_difference(-3, 2), 5);
|
||||
}
|
||||
|
||||
TEST(Operators, RangeCheck) {
|
||||
EXPECT_TRUE(fundamentals::is_in_range(5, 1, 10));
|
||||
EXPECT_FALSE(fundamentals::is_in_range(0, 1, 10));
|
||||
}
|
||||
|
||||
TEST(Operators, CountSetBits) {
|
||||
EXPECT_EQ(fundamentals::count_set_bits(0b00001111), 4);
|
||||
EXPECT_EQ(fundamentals::count_set_bits(0b10101010), 4);
|
||||
}
|
||||
|
||||
TEST(Operators, LogicalOperations) {
|
||||
EXPECT_TRUE(fundamentals::logical_and(true, true));
|
||||
EXPECT_FALSE(fundamentals::logical_and(true, false));
|
||||
EXPECT_TRUE(fundamentals::logical_or(false, true));
|
||||
EXPECT_FALSE(fundamentals::logical_or(false, false));
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
#include "variables_and_types.hpp"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
TEST(VariablesAndTypes, AddsIntegers) {
|
||||
EXPECT_EQ(fundamentals::add_integers(2, 3), 5);
|
||||
EXPECT_EQ(fundamentals::add_integers(-4, 10), 6);
|
||||
}
|
||||
|
||||
TEST(VariablesAndTypes, MultipliesDoubles) {
|
||||
EXPECT_DOUBLE_EQ(fundamentals::multiply_doubles(2.5, 4.0), 10.0);
|
||||
}
|
||||
|
||||
TEST(VariablesAndTypes, DetectsEvenNumbers) {
|
||||
EXPECT_TRUE(fundamentals::is_even(0));
|
||||
EXPECT_TRUE(fundamentals::is_even(42));
|
||||
EXPECT_FALSE(fundamentals::is_even(7));
|
||||
}
|
||||
|
||||
TEST(VariablesAndTypes, DescribesTypes) {
|
||||
EXPECT_EQ(fundamentals::describe_type(7), "int:7");
|
||||
EXPECT_EQ(fundamentals::describe_type(3.5), "double:3.5");
|
||||
EXPECT_EQ(fundamentals::describe_type(true), "bool:true");
|
||||
EXPECT_EQ(fundamentals::describe_type(false), "bool:false");
|
||||
}
|
||||
Reference in New Issue
Block a user