testSimpleProg for pass1 in C# is too specific, each expression can be represented by multiple Asts but only one is accepted.
I initially had a program that prioritised brackets, multiplication, division, addition and subtraction in that order which passed testSimpleProg but failed testOpOrder. As it interpreted x - y - z + 1 - 1 as x - y - (z + 1) - 1. When I swapped around multiplication and division then addition and subtraction to change what the program prioritsed, testOpOrder would pass but testSimpleProg would fail since the Ast generated wasn't the one specifically asked for.
This comment is hidden because it contains spoiler information about the solution
Python missing test : test.assert_equals(valid_ISBN10('123456789T'), False)
No sample tests.
I've make the random tests more randomy (?) in python.
Roughly half will expect True - the rest False.
Integers from -20 to 20 will be used.
Python 3.8 enabled.
Let me know if something breaks :/
There are only lists now hopefully
I think it's much better now 🤞
Let me know if not.
Hey, I had issues with that case at first as well, but remember the structure of the variables does not depend on any strings or integers within them. i.e ['[','s'] has the same structure as [1,2] if I am not mistaken. So the data types within the list actually do not matter, what does matter is the structure, i.e  of the list. That case is used to invalidate string conversions of the entire list.