I agree that the policy should be clearly stated up front. If it isn't, I would do what I wanted to.
When I started taking classes at my LYS it was not very clear what was expected and I wasn't sure what to do. But when you paid for the class you were given a coupon for 15% off one purchse. I figured that was a way of encouraging you to buy your yarn there.
Since then I have taken many classes at that shop and it appears that some buy their yarn there, some don't. I have, on occasion, used outside yarn.
HOWEVER, the shop has benefitted from a new customer (me) who shops their regularly whether buying class supplies or not. So now I don't sweat about it. If I sign up for a class and already have the perfect yarn, I use it. Because I know that during the weeks I am there I WILL spend money on something, perhaps even more than I would have just buying yarn for the project.
I don't believe that a sensible yarn shop would be so short sighted as to think that the class experience ends their relationship with a client. A class brings you into the store, gets you comfortable and hopefully starts a long term relationship with you.
Just last week I started a Fair Isle class at my LYS. I discovered there were only 3 of us signed up for this 5 session class and when I mentioned to the instructor that I felt bad that she only had 3 students and that it wouldn't be worth her while she told me she gets paid the same whether she has 3 or 6. So in my LYS it appears the instructor is an employee paid an hourly wage.
GinnyG on Ravelry, I'd LOVE to be in your "friends"