I like the general color-keying approach, reminds me of how we handle it in wined3d.
Maybe we could use yet another test to highlight the component == 0xff case, although I wouldn't consider it mandatory (i.e. checking ad-hoc on the side would be alright, as far as I'm concerned). Otherwise I think this is enough tests and I'm happy with them and the conversion math. In the sense, no point in trying to come up with more tests unless / until we happen to encounter some very specific edge case with some game in the wild...