Maybe you have an old phone. My android can block (fully block- not pass it on to voice mail) any number which includes texting just like my Iphone does.
I was probably wrong about blocking sending to voicemail.... my phone is new, Android 7. I just now realized that I hadn't had any voicemail from SUBSEQUENTLY blocked calls, so it probably does does completely block it.
What it can't do (stock) is block it as it is ringing. I think you have to reject it, THEN they can leave voicemail (which I don't want). Only then can you can block the number by going into the log and selecting the number. Sorry, I wasn't clear about that- I would like it to be a one-step process with three choices during ringing: answer, reject to VM, and block (with no VM), but there are only the first two.
Texting depends on the application being used. I use Textra (I never use the stock app), and it has an option to blacklist... but if a number is blocked (above) then I don't think texts can come through at all on that number.
Also worth mentioning is that by default, using the Android phone app, all incoming numbers will go through Google's databases of spam numbers and will be labeled as "PROBABLE SPAM" if appropriate, as the caller ID. I assume this is done by collecting other people's banning activity and after a certain threshold, it enters a master blacklist database.