IIRC all US government contractors have to be tested on hire.
Most of the large temp firms also do drug testing in the US (in my experience at least.) Never tested for booze, though everywhere I've worked on site has made it clear that you will be drug tested and breathalyzed in case of an on-the-job accident.
As i've moved up in job quality it has gone from "we will test you aggressively to see if you do drugs" to "why would we care about this?"
Practically it is very stupid because the heroin/meth/cocaine type drugs become undetectable within days while pot takes weeks.
It's a dumb US thing, basically.