Note that plunit also depends on expansion, so to make it work properly you really have to load the module. Now things get a little awkward as the first test is both expanded by your rule and plunit, so it depends on who comes first. If you do term expansion to simplify defining tests, keep them local (do not use system:). Then your rules come first and you can also generate test test rules (the XSB tabling tests do that a lot).
As far as I can tell, all works as it is supposed to.