From 3e108c98b43ca23fa22bb408b2f52534d948fc22 Mon Sep 17 00:00:00 2001 From: Jan Date: Sat, 7 Dec 2019 13:39:30 +0100 Subject: [PATCH] ZoneCodeGenerator: Fix TestReorder not being able to reorder members that came before a specified first entry --- .../Parsing/CommandFile/Tests/TestReorder.cs | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/ZoneCodeGenerator/Parsing/CommandFile/Tests/TestReorder.cs b/src/ZoneCodeGenerator/Parsing/CommandFile/Tests/TestReorder.cs index bdfcc2c3..317d1dfc 100644 --- a/src/ZoneCodeGenerator/Parsing/CommandFile/Tests/TestReorder.cs +++ b/src/ZoneCodeGenerator/Parsing/CommandFile/Tests/TestReorder.cs @@ -96,14 +96,25 @@ namespace ZoneCodeGenerator.Parsing.CommandFile.Tests var nextMember = memberPool.FirstOrDefault(information => information.Member.Name.Equals(nextMemberName)); - if (nextMember == null) + if (nextMember != null) { - throw new TestFailedException( - $"Cannot find member with name '{nextMemberName}' in type '{typeToReorder.Type.FullName}'."); + sortedMembers.Add(nextMember); + memberPool.Remove(nextMember); } + else + { + nextMember = + sortedMembers.FirstOrDefault(information => information.Member.Name.Equals(nextMemberName)); - sortedMembers.Add(nextMember); - memberPool.Remove(nextMember); + if (nextMember == null) + { + throw new TestFailedException( + $"Cannot find member with name '{nextMemberName}' in type '{typeToReorder.Type.FullName}'."); + } + + sortedMembers.Remove(nextMember); + sortedMembers.Add(nextMember); + } } // Insert members that have not been mentioned at the end.