Your rules depend on server variables which are present only on the server. They cannot be simulated in a client-side-only testdriver. This is a documented issue with the testdriver. (It seems to me though, that you also may have
demonstrated a bug in the testdriver - that strangely formatted text output for the expected value doesn't seem right. I'll have to look at that separately. But that issue is irrelevant to your question. )

In order to determine if your rules are working, you'll need to run them through a full server environment. If you do that, and still see a problem, post the IIRF server log file from that transaction, and we'll see if we can diagnose it.