It is usually a company policy, and not law, that dictates drug testing. I don't know which companies test, but you may want to try McDonalds or Wendy's, seems like a lot of stoners work there. I never get my fries, and usually have to wait a long time for my food.
If the company is a drug free workplace, which most companies are today, random UA's of employees are done. If the employer suspects an employee is taking illicit drugs, he/she can request the employee to take a UA. There isn't a law and the employee is entitled to refuse however, if the employee has nothing to hide, this shouldn't be an issue.
With the prevalent use of drugs, many employers have taken the stand to test for them. Sadly, I believe this has brought about the development of synthetic drugs and the use of them to beat the testing. Too many employers are now burdened and cheated by under the influence employees. And that includes alcohol also!
Try to appreciate that in a workplace environment where there is lots of machinery and vehicles and strict safety rules and code, employing people who use drugs is just plain dangerous. Having a job means having more of a life. If you are devoted to drugs and still need a job, all that is open to you are jobs you won't want. Employers test for drugs to make the workplace safer. Where do you fit in all this?