mirror of
https://github.com/zoriya/Bomberman.git
synced 2026-05-26 07:49:33 +00:00
37 lines
860 B
C++
37 lines
860 B
C++
//
|
|
// Created by Zoe Roux on 5/17/21.
|
|
//
|
|
|
|
|
|
#include "Wal.hpp"
|
|
#include "System/Movable/MovableSystem.hpp"
|
|
#include <catch2/catch.hpp>
|
|
|
|
using namespace WAL;
|
|
using namespace BBM;
|
|
|
|
TEST_CASE("Create system", "[Engine][System]")
|
|
{
|
|
Wal wal;
|
|
wal.addSystem<MovableSystem>();
|
|
|
|
SECTION("Check existence") {
|
|
REQUIRE_NOTHROW(wal.getSystem<MovableSystem>());
|
|
}
|
|
SECTION("Duplicate check") {
|
|
REQUIRE_THROWS_AS(wal.addSystem<MovableSystem>(), DuplicateError);
|
|
}
|
|
SECTION("Remove system") {
|
|
wal.removeSystem<MovableSystem>();
|
|
REQUIRE_THROWS_AS(wal.getSystem<MovableSystem>(), NotFoundError);
|
|
REQUIRE_THROWS_AS(wal.removeSystem<MovableSystem>(), NotFoundError);
|
|
}
|
|
}
|
|
|
|
TEST_CASE("Create system by reference", "[Engine][System]")
|
|
{
|
|
Wal wal;
|
|
MovableSystem system(wal);
|
|
wal.addSystem(system);
|
|
REQUIRE_THROWS_AS(wal.addSystem<MovableSystem>(), DuplicateError);
|
|
} |