The tests should go in combase/tests. For implementation itself, it would be useful to have some wine structures to see what's actually stored. For tests simple linear approach, as we do for BSTR for example, would be more readable. Loops could be useful sometimes, but here it complicates expected values and todos.