Just a suggestion. If you change parameter type of NextAction from List to IList then you can just pass argument of type int[] (array). No need for additional memory allocation.
1 Like
It’s true, but there’s a side-effect of using an IList interface when passing an array: you can’t use the Add/Remove/Insert/etc. methods on the IList, you’ll get a runtime error
System.NotSupportedException : Collection is read-only
since IList has a fixed size, whereas List has not.
It had to be said, since probably most people don’t know yet at this stage of the course all the subtetlies among IList interface, List class, arrays, etc. 
Instead of using an int[] and converting I like to initialize the list with an array like this:
[Test]
public void T11_TwoStrikesLastFrame()
{
pinFalls = new List<int>() {
1, 1, // 1st frame
1, 1, // 2nd frame
1, 1, // 3rd frame
1, 1, // 4th frame
1, 1, // 5th frame
1, 1, // 6th frame
1, 1, // 7th frame
1, 1, // 8th frame
1, 1, // 9th frame
10, 10 // 10th frame
};
Assert.AreEqual(reset, ActionMaster.NextAction(pinFalls));
}