It is BS, but I was under the impression it's more a CYA strategy for liability if a worker has an accident that puts the company at risk. IE imagine a roofer drops a shingle on someone's head, accidents happen and the roofer was sober but if they can't pass a drug test the company could be in serious hot water in a negligence lawsuit. BS runs downhill, so to speak.