I'm not super well versed in shaders, so please take this with a grain of salt, but I believe fragment
is called on each pixel of the screen that the object takes up. So if the size is 20x20 pixels, the entire ColorRect node is visible, and there is no Viewport scaling applied, then it will be 400 fragment calls, one for each pixel. This number can be reduced if the Viewport size is scaled down, and increased if the Viewport is scaled up. I think it really depends on the number of pixels the node occupies within the Viewport.