We get great coffee from the machine during the week, but if we have to work weekends (probably happens about once a month or two) we aren't allowed to turn it on (it needs cleaning daily - can't turn it on if there is no one to clean it) so immediate boss will offer to buy us all a decent coffee from the cafe down the road rather than drinking instant. It's usually understood that "the job" will pay for lunch on a weekend day or dinner if people work that late - that is, someone puts it on their card and charges it as an expense to the project so the bill is ultimately paid by the client. The manager is expected to do the paying, so if it doesn't get reimbursed they will take it on the chin.
Every company I've worked for has done a Christmas function, usually a 3 course dinner at a fancy venue, often with spouses invited. That's paid for by the company, one place had a whole of office party paid by the company, plus a department party from the department budget, plus a group lunch for our immediate group which the immediate manager paid out of his pocket. Current company also do a family day for Christmas, with gifts for everyone's children, entertainers, and a basic barbeque lunch. Plus a sundowner on the bosses boat. Frankly, I actually thought the latter was a bit tacky - when staff had been given paycuts of 15%, is it really a good idea for the CEO to be showing off his $4 M boat? Even if it is to give everyone a pleasant evening on the water (and it was a fun night).