Lots of good examples in the plugins database. For example:
https://github.com/moodleou/moodle-qtype_oumultiresponse/blob/master/questiontype.php#L265
With example unit tests at https://github.com/moodleou/moodle-qtype_oumultiresponse/blob/master/tests/questiontype_test.php#L114