How to properly escape string to test in shell?
===

I have the following function:

    testit()
    {
    [ "$1" == "OK" ] && echo "good" || echo "bad"
    }
but it doesn't work as expected. I can call it with:

    testit 'OK' #good
    testit 'abc' #bad
but when I call it with:

    testit '('
it fails with: "sh: closing paren expected". I've quoted the string to test, so why it acts like there are no quotes?