It seems that blocks are written to disk in the WriteBlockToDisk function in main.cpp. But I haven't found where they are deleted. Maybe they don't ever get deleted from disk? Once written they are always valid?
Never , they never gets deleted mate unless you do it your self . and If you delete your self then Bitcoin Core will download them once again and check them while start up
Path :
%appdata%\Bitcoin\blocks , try to delete one of them and you will see your wallet Re-downloading it once again