Skip to content

Commit c4a1c51

Browse files
authored
Merge pull request #30 from sir-gon/feature/solve_me_first
[Hacker Rank]: Warmup: Solve Me Firs. Solved ✅
2 parents 083e73d + 55028f8 commit c4a1c51

File tree

7 files changed

+45
-20
lines changed

7 files changed

+45
-20
lines changed

src/lib/exercises/include/exercises/foo.hpp

Lines changed: 0 additions & 7 deletions
This file was deleted.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#pragma once
2+
3+
#include <cstdint>
4+
5+
namespace hackerrank::warmup {
6+
int solveMeFirst(int a, int b);
7+
};

src/lib/exercises/src/foo.cpp

Lines changed: 0 additions & 3 deletions
This file was deleted.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#include <exercises/hackerrank/warmup/solve_me_first.hpp>
2+
3+
namespace hackerrank::warmup {
4+
int solveMeFirst(int a, int b) { return a + b; }
5+
} // namespace hackerrank::warmup

src/tests/unit/lib/foo.test.cpp

Lines changed: 0 additions & 10 deletions
This file was deleted.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#include <catch2/catch_test_macros.hpp>
2+
3+
#include <exercises/hackerrank/warmup/solve_me_first.hpp>
4+
#include <filesystem>
5+
#include <fstream>
6+
#include <nlohmann/json.hpp>
7+
#include <vector>
8+
9+
using json = nlohmann::json;
10+
11+
TEST_CASE("solveMeFirst", "[warmup]") {
12+
std::filesystem::path cwd = std::filesystem::current_path();
13+
std::string path =
14+
cwd.string() +
15+
"/unit/lib/hackerrank/warmup/solve_me_first.testcases.json";
16+
17+
INFO("solveMeFirst JSON test cases FILE: " << path);
18+
19+
std::ifstream f(path);
20+
json data = json::parse(f);
21+
22+
for (auto testcase : data) {
23+
int result = hackerrank::warmup::solveMeFirst(testcase["a"], testcase["b"]);
24+
CHECK(result == testcase["expected"]);
25+
}
26+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[
2+
{ "a": 0, "b": 0, "expected": 0 },
3+
{ "a": 2, "b": 3, "expected": 5 },
4+
{ "a": 0, "b": 7, "expected": 7 },
5+
{ "a": 7, "b": 0, "expected": 7 },
6+
{ "a": 7, "b": 7, "expected": 14 }
7+
]

0 commit comments

Comments
 (0)