#include <catch2/catch_test_macros.hpp>
#include <fmt/core.h>
#include <string>
#include "sound.hpp"
#include "dinkyecs.hpp"

using DinkyECS::Entity;
using namespace fmt;

TEST_CASE("confirm basic functionality", "[sounds]") {
  REQUIRE_THROWS([&](){SoundManager sounds("./BADassets");}());

  SoundManager sounds("./assets");

  REQUIRE_THROWS(sounds.load("bad", "badfileDOESNOTEXIST.wav"));
  REQUIRE_THROWS(sounds.play("bad"));

  sounds.load("combat_miss", "combat_miss.mp3");
  sounds.play("combat_miss");
  sounds.playAt("combat_miss", 1, 1, 1);
}
