I'm using ActiveResource a fair bit now. It's working fairly well, even with our non-standard XML and so on. Testing it works ok with use of HttpMock (see this blog entry for a way to do it). But, I've found that HttpMock appears to have a bug in how it deals with headers, and comparing the request you're making and the known requests. If the order of the keys in the header hash differs, they will fail to compare equally, and thus fail to match. To resolve this, I've modified the HttpMock::Request#hash method. It used to look like this:
I changed it simply to this:
I will figure out how to post a bug report on this, but wanted to post here first in case there's a different solution, or disagreement that this is a bug.
Update: I've filed a bug in Rails trac. You can find it here.