that it can vary. Healthy fish can go longer I'm sure.
But after 3 weeks I'm thinking it must be getting nutrition somehow. Especially if its active. The longest I have ever heard of a healthy fish not eating is about 3 weeks before it died. Sick fish a week or 2.
I haven't let my fish go over a week because of vacation etc. So honestly, my thoughts would be a guess as to how long. Maybe someone else here has more info on that one.