I'm a little confused by your test case, so you're saying when the inputText is empty, you change the selectOneChoice to choice 1, and since your inputText "required" attribute is set to true, so ADF throws an visual error remind you to "enter a value", till now everything is what you expected, right? But although the error msg pops out, the selectOneChoice still got to change to choice 1, this is the problem right?
I guess to prevent the selectOneChoice value to change to choice 1 in the error case, you can add some verification code in the valueChangeListener of the selectOneChoice component from the back bean, to decide whether the value should be changed.