mirror of
https://github.com/loot/libloot.git
synced 2026-07-27 14:16:01 -07:00
Add missing Game::Init() calls in tests
Not calling Game::Init() could cause crashing when loading plugins. Better solutions would be to make the active plugin checks properly thread-safe, or even to initialise the libloadorder handle on Game construction (but the latter would mean ensuring Game objects are only created for games that are installed).
This commit is contained in:
@@ -106,8 +106,9 @@ TEST_P(GameTest, initShouldNotThrowIfGameAndLocalPathsAreNotEmpty) {
|
||||
EXPECT_NO_THROW(game.Init());
|
||||
}
|
||||
|
||||
TEST_P(GameTest, loadAllInstalledPluginsWithHeadersOnlyTrueShouldLoadTheHeadersOfAllInstalledPlugins) {
|
||||
TEST_P(GameTest, loadPluginsWithHeadersOnlyTrueShouldLoadTheHeadersOfAllInstalledPlugins) {
|
||||
Game game = Game(GetParam(), dataPath.parent_path(), localPath);
|
||||
ASSERT_NO_THROW(game.Init());
|
||||
|
||||
EXPECT_NO_THROW(loadInstalledPlugins(game, true));
|
||||
EXPECT_EQ(11, game.GetPlugins().size());
|
||||
@@ -121,8 +122,9 @@ TEST_P(GameTest, loadAllInstalledPluginsWithHeadersOnlyTrueShouldLoadTheHeadersO
|
||||
EXPECT_EQ(0, plugin.Crc());
|
||||
}
|
||||
|
||||
TEST_P(GameTest, loadAllInstalledPluginsWithHeadersOnlyFalseShouldFullyLoadAllInstalledPlugins) {
|
||||
TEST_P(GameTest, loadPluginsWithHeadersOnlyFalseShouldFullyLoadAllInstalledPlugins) {
|
||||
Game game = Game(GetParam(), dataPath.parent_path(), localPath);
|
||||
ASSERT_NO_THROW(game.Init());
|
||||
|
||||
EXPECT_NO_THROW(loadInstalledPlugins(game, false));
|
||||
EXPECT_EQ(11, game.GetPlugins().size());
|
||||
|
||||
@@ -271,6 +271,7 @@ TEST_P(ConditionGrammarTest, aChecksumConditionWithACrcThatMatchesTheActualPlugi
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aChecksumConditionWithACrcThatMatchesTheActualCachedPluginCrcShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, false));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -299,6 +300,7 @@ TEST_P(ConditionGrammarTest, aChecksumConditionWithACrcThatDoesNotMatchTheActual
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionEqualityConditionWithAVersionThatEqualsTheActualPluginVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -314,6 +316,7 @@ TEST_P(ConditionGrammarTest, aVersionEqualityConditionWithAVersionThatEqualsTheA
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionEqualityConditionWithAVersionThatDoesNotEqualTheActualPluginVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -329,6 +332,7 @@ TEST_P(ConditionGrammarTest, aVersionEqualityConditionWithAVersionThatDoesNotEqu
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionEqualityConditionForAPluginWithNoVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -344,6 +348,7 @@ TEST_P(ConditionGrammarTest, aVersionEqualityConditionForAPluginWithNoVersionSho
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionInequalityConditionWithAVersionThatDoesNotEqualTheActualPluginVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -359,6 +364,7 @@ TEST_P(ConditionGrammarTest, aVersionInequalityConditionWithAVersionThatDoesNotE
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionInequalityConditionWithAVersionThatEqualsTheActualPluginVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -374,6 +380,7 @@ TEST_P(ConditionGrammarTest, aVersionInequalityConditionWithAVersionThatEqualsTh
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionInequalityConditionForAPluginWithNoVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -389,6 +396,7 @@ TEST_P(ConditionGrammarTest, aVersionInequalityConditionForAPluginWithNoVersionS
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionLessThanConditionWithAnActualPluginVersionLessThanTheGivenVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -404,6 +412,7 @@ TEST_P(ConditionGrammarTest, aVersionLessThanConditionWithAnActualPluginVersionL
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionLessThanConditionWithAnActualPluginVersionEqualToTheGivenVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -419,6 +428,7 @@ TEST_P(ConditionGrammarTest, aVersionLessThanConditionWithAnActualPluginVersionE
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionLessThanConditionForAPluginWithNoVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -434,6 +444,7 @@ TEST_P(ConditionGrammarTest, aVersionLessThanConditionForAPluginWithNoVersionSho
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionGreaterThanConditionWithAnActualPluginVersionGreaterThanTheGivenVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -449,6 +460,7 @@ TEST_P(ConditionGrammarTest, aVersionGreaterThanConditionWithAnActualPluginVersi
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionGreaterThanConditionWithAnActualPluginVersionEqualToTheGivenVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -464,6 +476,7 @@ TEST_P(ConditionGrammarTest, aVersionGreaterThanConditionWithAnActualPluginVersi
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionGreaterThanConditionForAPluginWithNoVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -479,6 +492,7 @@ TEST_P(ConditionGrammarTest, aVersionGreaterThanConditionForAPluginWithNoVersion
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionLessThanOrEqualToConditionWithAnActualPluginVersionEqualToTheGivenVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -494,6 +508,7 @@ TEST_P(ConditionGrammarTest, aVersionLessThanOrEqualToConditionWithAnActualPlugi
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionLessThanOrEqualToConditionWithAnActualPluginVersionGreaterThanTheGivenVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -509,6 +524,7 @@ TEST_P(ConditionGrammarTest, aVersionLessThanOrEqualToConditionWithAnActualPlugi
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionLessThanOrEqualToConditionForAPluginWithNoVersionShouldEvaluateToTrue) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -540,6 +556,7 @@ TEST_P(ConditionGrammarTest, aVersionGreaterThanOrEqualToConditionWithAnActualPl
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionGreaterThanOrEqualToConditionWithAnActualPluginVersionLessThanTheGivenVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
@@ -555,6 +572,7 @@ TEST_P(ConditionGrammarTest, aVersionGreaterThanOrEqualToConditionWithAnActualPl
|
||||
}
|
||||
|
||||
TEST_P(ConditionGrammarTest, aVersionGreaterThanOrEqualToConditionForAPluginWithNoVersionShouldEvaluateToFalse) {
|
||||
ASSERT_NO_THROW(game_.Init());
|
||||
ASSERT_NO_THROW(loadInstalledPlugins(game_, true));
|
||||
|
||||
Grammar grammar(&game_);
|
||||
|
||||
@@ -196,6 +196,7 @@ TEST_P(GameTest, redatePluginsShouldRedatePluginsForSkyrimAndSkyrimSEAndDoNothin
|
||||
|
||||
TEST_P(GameTest, loadAllInstalledPluginsWithHeadersOnlyTrueShouldLoadTheHeadersOfAllInstalledPlugins) {
|
||||
Game game = Game(GameSettings(GetParam()).SetGamePath(dataPath.parent_path()), "", localPath);
|
||||
ASSERT_NO_THROW(game.Init());
|
||||
|
||||
EXPECT_NO_THROW(game.LoadAllInstalledPlugins(true));
|
||||
EXPECT_EQ(11, game.GetPlugins().size());
|
||||
@@ -211,6 +212,7 @@ TEST_P(GameTest, loadAllInstalledPluginsWithHeadersOnlyTrueShouldLoadTheHeadersO
|
||||
|
||||
TEST_P(GameTest, loadAllInstalledPluginsWithHeadersOnlyFalseShouldFullyLoadAllInstalledPlugins) {
|
||||
Game game = Game(GameSettings(GetParam()).SetGamePath(dataPath.parent_path()), "", localPath);
|
||||
ASSERT_NO_THROW(game.Init());
|
||||
|
||||
EXPECT_NO_THROW(game.LoadAllInstalledPlugins(false));
|
||||
EXPECT_EQ(11, game.GetPlugins().size());
|
||||
|
||||
Reference in New Issue
Block a user