1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
#include <SFML/Audio/Listener.hpp>
#include <catch2/catch_test_macros.hpp>
#include <SystemUtil.hpp>
TEST_CASE("[Audio] sf::Listener")
{
SECTION("Cone")
{
constexpr sf::Listener::Cone cone;
STATIC_CHECK(cone.innerAngle == sf::radians(0));
STATIC_CHECK(cone.outerAngle == sf::radians(0));
STATIC_CHECK(cone.outerGain == 0);
}
SECTION("Set/get global volume")
{
CHECK(sf::Listener::getGlobalVolume() == 100);
sf::Listener::setGlobalVolume(50);
CHECK(sf::Listener::getGlobalVolume() == 50);
}
SECTION("Set/get position")
{
CHECK(sf::Listener::getPosition() == sf::Vector3f());
sf::Listener::setPosition({1, 2, 3});
CHECK(sf::Listener::getPosition() == sf::Vector3f(1, 2, 3));
}
SECTION("Set/get direction")
{
CHECK(sf::Listener::getDirection() == sf::Vector3f(0, 0, -1));
sf::Listener::setDirection({4, 5, 6});
CHECK(sf::Listener::getDirection() == sf::Vector3f(4, 5, 6));
}
SECTION("Set/get velocity")
{
CHECK(sf::Listener::getVelocity() == sf::Vector3f());
sf::Listener::setVelocity({7, 8, 9});
CHECK(sf::Listener::getVelocity() == sf::Vector3f(7, 8, 9));
}
SECTION("Set/get cone")
{
auto cone = sf::Listener::getCone();
CHECK(cone.innerAngle == sf::degrees(360));
CHECK(cone.outerAngle == sf::degrees(360));
CHECK(cone.outerGain == 1);
sf::Listener::setCone({sf::radians(1), sf::radians(2), 3});
cone = sf::Listener::getCone();
CHECK(cone.innerAngle == sf::radians(1));
CHECK(cone.outerAngle == sf::radians(2));
CHECK(cone.outerGain == 3);
}
SECTION("Set/get up vector")
{
CHECK(sf::Listener::getUpVector() == sf::Vector3f(0, 1, 0));
sf::Listener::setUpVector({1, 0, 1});
CHECK(sf::Listener::getUpVector() == sf::Vector3f(1, 0, 1));
}
}
|