If you have a job and you know they drug test, DON'T DO DRUGS. Even if the drug in questions is legal, you need to think about how that reflects on you as person and an employee. Now if you want to do whatever off the clock and can guarantee you are FULLY drug free (suffering or feeling no effects from the drug/s) when it's time to clock in then that is a different matter.
Yes, employees should always be fired for failing a drug test, because if a person fails a drug test they have probably done drugs at least 10 times. It's not that hard to tell a person not to do drugs as a condition of their employment. They should be held accountable.
Actually, no. If you fail a drug test the first time, I think that you should be offered counseling and if needed, a stint in a rehabilitation center for drugs or alcohol. I think that everyone deserves a second chance, and with jobs so hard to come by these days, you deserve the benefit of the doubt.
It really depends on the drug because some drugs are not as terrible as others. Also it would be a lot better to get those people some help rather than abandoning them. If they can't be helped and the drugs are causing problems at work then they should be fired. Workers should be clear of drugs when working because of safety concerns.