mirror of
https://github.com/ModOrganizer2/modorganizer-bsapacker.git
synced 2026-07-27 14:06:14 -07:00
64 lines
1.3 KiB
C++
64 lines
1.3 KiB
C++
#include "gtest/gtest.h"
|
|
#include "gmock/gmock.h"
|
|
|
|
#include "BsaPacker.h"
|
|
#include "MockOrganizer.h"
|
|
|
|
using namespace BsaPacker;
|
|
using ::testing::NaggyMock;
|
|
using ::testing::Return;
|
|
using ::testing::Eq;
|
|
|
|
namespace BsaPackerTests
|
|
{
|
|
class BsaPackerFacts : public ::testing::Test
|
|
{
|
|
protected:
|
|
void SetUp() override {
|
|
naggyMockOrganizer = new NaggyMock<MockOrganizer>();
|
|
}
|
|
|
|
void TearDown() override {
|
|
delete naggyMockOrganizer;
|
|
}
|
|
|
|
NaggyMock<MockOrganizer>* naggyMockOrganizer;
|
|
};
|
|
|
|
TEST_F(BsaPackerFacts, CtorAndInit_Always_Constructs)
|
|
{
|
|
auto result = Bsa_Packer();
|
|
EXPECT_NO_THROW(result.init(naggyMockOrganizer));
|
|
}
|
|
|
|
TEST_F(BsaPackerFacts, IsActive_WhenPluginEnabled_ReturnsTrue)
|
|
{
|
|
// Arrange
|
|
Bsa_Packer sut;
|
|
ON_CALL(*naggyMockOrganizer, pluginSetting(Eq("BSA Packer"), Eq(QStringLiteral("enabled"))))
|
|
.WillByDefault(Return(true));
|
|
sut.init(naggyMockOrganizer);
|
|
|
|
// Act
|
|
auto result = sut.isActive();
|
|
|
|
// Assert
|
|
EXPECT_TRUE(result);
|
|
}
|
|
|
|
TEST_F(BsaPackerFacts, IsActive_WhenPluginDisabled_ReturnsFalse)
|
|
{
|
|
// Arrange
|
|
Bsa_Packer sut;
|
|
ON_CALL(*naggyMockOrganizer, pluginSetting(Eq("BSA Packer"), Eq("enabled")))
|
|
.WillByDefault(Return(false));
|
|
sut.init(naggyMockOrganizer);
|
|
|
|
// Act
|
|
auto result = sut.isActive();
|
|
|
|
// Assert
|
|
EXPECT_FALSE(result);
|
|
}
|
|
}
|