в solidity 0.8.0 и выше теперь проверки на овер/андер флоу теперь работают из коробки, больше нет нужды использовать safeMath
в uint256 способно влезть число большее чем количество всех атомов в нашей вселенной, поэтому в некоторых случаях проверками можно пренебречь (при условии что мы четко понимаем что происходит)
Разверните ваш контракт с initial Supply= 10e28 Попробуйте прогнать ваш тест. Ниченго не сломалосмь? Если сломалось то почему.
Смоделируйте на вашем контратке ситуацию, в которой произойдет переполнение https://docs.soliditylang.org/en/v0.5.11/security-considerations.html#two-s-complement-underflows-overflows