If it's legal in the state he lives and works in, this is disheartening. I wont go so far as to say that it's wrong...because businesses should be able to contract for some level of behavior control. You want the job, you play by their rules.
Here's my problem with the situation...if they didn't give him any notice...and let him do this for an extended period of time...how is he supposed to know that something legal is against their policies. Let's cut to the chase...I'm sure there's a drug policy...but did the policy cover medical mary jane?
I think he's got the responsibility here dont get me wrong. The moment he even considered the treatment...he should have asked for a clarification...and known the consequences.
But if his manager knew...and let him do it...that seems pretty unfair to cut him out of the blue.