You can create a variable, set that, and pass that variable as the first parameter to greeting. I don't see why having a class makes testing any easier.
In plain C, your main "method" can be a simple external function, and the "helpers" can be static functions. Python offers similar functionality.
Making a class is a step backward because the internal helpers have to exposed to users, even if they're intended not to be used.