While its usually important to try to do as much as possible in one SQL statement (to help the optimizer for OLTP applications etc), this appears to be a data corruption scenario so I assume a one-off data scrubbing exercise is all that's required. And when you consider there's only two cases ("single or two digit values") there's no real harm in using two UPDATE
statements e.g.
UPDATE Test1
SET text_col = '0' + text_col
WHERE text_col ALIKE '[0-9][0-9]';
UPDATE Test1
SET text_col = '00' + text_col
WHERE text_col ALIKE '[0-9]';
HOWEVER, the most important part of the exercise is to apply data constraints to ensure the data corruption doesn't reoccur e.g. (ANSI-92 SQL Mode syntax):
ALTER TABLE Test1 ADD
CONSTRAINT text_col__numeric__at_least_three_digits
CHECK (
text_col NOT ALIKE '[0-9]'
AND text_col NOT ALIKE '[0-9][0-9]'
);