public void CSemVerSafeCompare_in_action(string left, char op, string right) { SVersion vL = left != null?SVersion.TryParse(left) : null; SVersion vR = right != null?SVersion.TryParse(right) : null; switch (op) { case '>': SVersion.CSemVerSafeCompare(vL, vR).Should().BePositive(); SVersion.CSemVerSafeCompare(vR, vL).Should().BeNegative(); break; case '<': SVersion.CSemVerSafeCompare(vL, vR).Should().BeNegative(); SVersion.CSemVerSafeCompare(vR, vL).Should().BePositive(); break; case '=': SVersion.CSemVerSafeCompare(vL, vR).Should().Be(0); SVersion.CSemVerSafeCompare(vR, vL).Should().Be(0); break; default: throw new ArgumentException(nameof(op)); } }