Traintastic has such a simulator for all supported protocols, the simulation is always on protocol message level as this makes it easier to test the full stack without hardware.
I even took it one step further, I build a simple railway simulator (not yet part of master), see: YouTube: DevPreview 003 - Traintastic Simulator
At the bottom of the screen you can see the simulated LocoNet communication, the train in the sim drives using throttle commands, and the sim generates the feedback commands, turnouts are supported as well.
@gfgit modified the Traintastic Simulator and connected it to a real mechnical Signalbox, see Simulation of Padua Central station (really awesome project, hope to visit it one day)