Actually you can be denied a promotion for this or any reason, even no reason at all. That is unless you have an agreement of some sort to the contrary (e.g. employment or union contract), or this denial violates existing company policy, or your treatment was the result of actionable discrimination. Otherwise, your employer has the right to set the terms and conditions of the workplace as it sees fit. For your part, you can choose to continue to work for this employer, or not. This is called "at will" employment.