A depleted Bafana Bafana outfit held Ghana to a 1-1 draw in their training match at Royal Bafokeng stadium in Rustenburg on Sunday.
Two goals in the first half in quick succession for each side were the highlights of a tight midfield battle, where Pitso Mosimane's youthful charges did well to hold the visitors, who are one of the favourites for the African Nations Cup.
"We had a good training match where we were able to play every player in the squad of 23," said Ghana assistant coach James Appiah.
The Bafana team were able to match Ghana for pace but not in strength as they were starved of possession by the Black Stars.
"For us it gave us what we needed, tactically, attacking and defensively," added Appiah.
Even when Ghana seemed to have scored the winner in the 89th minute, they were called back for offside and were unable to wrestle the win from the youthful home side.
Mosimane will be pleased to have been unbeaten with a largely understrength squad against Zambia and Ghana.
"We finished our practice matches against Equatorial Guinea, Zambia and now Ghana, and I think we got what we wanted," said Mosimane at the post match press conference.
"We came and we went to war, and out of these three games we never dropped the South African flag."
Earlier, Bafana hit the lead early with a goal from Thami Sangweni in the seventh minute. His speculative effort from long range caught Adam Kwarasek in the Ghanaian goal napping. Kwarasek was wrong-footed and could only put in a despairing dive as the ball rolled into the the back of the net.
The lead was short for the home side as Ghana struck back five minutes later. Sulley Muntari's lofted shot from outside the box had Bafana keeper Brilliant Khuzwayo caught off guard, as the scorelines were levelled.
Ghana soon worked their way into the game after drawing level and began to dominate. Bafana were starved of possession and opted to try and catch Ghana on the counter attack, but lacked direction in front of goal.
The visitors used their strength well and built up patient forays into the Bafana area and always looked likely to lead before halftime.
Mosimane brought on Lehlohonolo Majoro in the second half as his side went in search of a winner.
To their credit, Bafana did not sit back and settle for a draw in the second period, they chose to run at the Ghanians, but the home side were guilty of sloppy finishing in the box.
Ghana starting line up
Adam Kwarasey John Paintsil Masahudu Alhassan John Boye John Mensah Derek Boateng Samuel Inkoom Emmanuel Agyemang Badu Jordan Ayew Dede Ayew Sulley Muntari