On these symbolic tests, you can't call `.doit()` on the `qapply`, as it will try to evaluate the Wigner-D matrix element (which it can't do for symbolic `j`).

Is there a reason you call `.doit()` on all of these? You shouldn't need to, `qapply` should evaluate without it. If you do need to call `.doit()`, you should be able to pass something like `deep=False` (I think).