As the initialized flag was declared static, it was used as an indicator for first initialization of any test (using BaseTest), not only for the test class. To make it work as it was intended, 'static' needs to be removed. I renamed the property from upper to lower case to reflect that it's not static.
Also, the method isInitialSetup() inverts the meaning of the flag, but simply uses it directly. The class is in it's initial state when it wasn't initialized before. To fix this, I introduced inverting the flag in the method.
I hope I didn't break anything with editing this directly in GitHub without IDE support. This especially means I wasn't able to test the change. As the flag is declared protected, it might be used directly in other classes.
As the initialized flag was declared static, it was used as an indicator for first initialization of any test (using BaseTest), not only for the test class. To make it work as it was intended, 'static' needs to be removed. I renamed the property from upper to lower case to reflect that it's not static.
Also, the method isInitialSetup() inverts the meaning of the flag, but simply uses it directly. The class is in it's initial state when it wasn't initialized before. To fix this, I introduced inverting the flag in the method.
I hope I didn't break anything with editing this directly in GitHub without IDE support. This especially means I wasn't able to test the change. As the flag is declared protected, it might be used directly in other classes.