Genuinely don't know the answer to that question and I would look to USA, Canada etc, to see how they make it work in practice. They are particularly hot on drug testing in America but I suppose individual companies could set their own standards i.e. no recreational drug use at any time but if they don't do that for alcohol, and cannabis was legal, I don't see how they
Tricky subject - I don't know if they can test for impairment from cannabis, rather than just that they have detected it in your hair for example from living with a cannabis smoker. I suppose it depends what you do. I can be sacked for having 1/3 of the drink drive limit of alcohol on my breath, because I work for a railway company (even though I don't physically work on the railway - I push pens).
The thing is you know that staying off alcohol 12 hours before you push those pens you would blow a zero test result. Cannabis would still be detectable for example if you had 2 weeks holiday smoking spliffs in your van and then stayed off it for a couple of days before you went back they would still detect it and sack you. As it stands now. But could you then argue that you hadn't broke the law and they were discriminating against you. It would be like being sacked for driving at 70mph in a private car in your own time where company policy says 60mph