Add more actionset tests

This commit is contained in:
Asriel Camora
2023-10-31 15:41:09 -07:00
parent 23c49d4453
commit 256a72db88
2 changed files with 35 additions and 5 deletions
+2 -2
View File
@@ -36,11 +36,11 @@ jobs:
- name: Build - name: Build
run: | run: |
dotnet build --configuration Release dotnet build --configuration Release --no-restore
- name: Test - name: Test
run: | run: |
dotnet test --configuration Release --logger "trx;logfilename=results.trx" --logger "html;logfilename=results.html" --logger "console;verbosity=detailed" --results-directory="TestResults" dotnet test --configuration Release --logger "trx;logfilename=results.trx" --logger "html;logfilename=results.html" --logger "console;verbosity=detailed" --no-build --results-directory="TestResults"
- name: Upload Artifacts - name: Upload Artifacts
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
+30
View File
@@ -101,4 +101,34 @@ public class ActionSetTests
Assert.AreEqual(ActionType.ByregotsBlessing, set.ElementAt(1)); Assert.AreEqual(ActionType.ByregotsBlessing, set.ElementAt(1));
Assert.AreEqual(ActionType.BasicSynthesis, set.ElementAt(2)); Assert.AreEqual(ActionType.BasicSynthesis, set.ElementAt(2));
} }
[TestMethod]
public void TestRandomIndex()
{
var actions = new[]
{
ActionType.BasicTouch,
ActionType.BasicSynthesis,
ActionType.GreatStrides,
ActionType.TrainedFinesse,
};
var set = new ActionSet();
foreach(var action in actions)
set.AddAction(action);
var counts = new Dictionary<ActionType, int>();
var rng = new Random(0);
for (var i = 0; i < 100; i++)
{
var action = set.SelectRandom(rng);
Assert.IsTrue(actions.Contains(action));
counts[action] = counts.GetValueOrDefault(action) + 1;
}
foreach (var action in actions)
Assert.IsTrue(counts.GetValueOrDefault(action) > 0);
}
} }