A calamitous own goal by Luxembourg defender Kevin Malget gave Northern Ireland a 1-0 win in a drab friendly.
Malget headed into his own net in the first half of a match that was livened up slightly after the break by the introduction of in-form Linfield striker Shayne Lavery.
Cardiff City defender Ciaron Brown, drafted in from the U21 squad, made his debut in an experimental NI line-up.
NI play Germany in a crucial Euro 2020 qualifier at Windsor Park on Monday.
The 1-0 victory stretches Northern Ireland’s winning run to five matches after they won all of their four opening Euro 2020 qualifiers.
The home fans did their best to add some life to a friendly that started slowly and always had the look of a match that was being played by a home team that was selected by O’Neill with Monday’s Euro 2020 qualifier in mind.
Alfie McCalmont and Ethan Galbraith, also promoted from Ian Baraclough’s Under-21 squad, both came on in the second half for their senior international debuts, while captain Steven Davis also came on to equal Aaron Hughes’ appearance record for outfield players.
Northern Ireland’s goal came from the head of visiting defender Malget in the 37th minute from a Jordan Thompson corner.
George Saville headed it across goal from the back post and, when home keeper Anthony Moris punched clear under pressure from Tom Flanagan, Malget somehow contrived to find the top corner of his own net when trying to head clear.
The goal came towards the end of a flat first half in which Northern Ireland’s only real shining light was the industry and pace of Gavin Whyte down the right wing.
The Cardiff City wide man, who got a move to the Championship club in the summer after an impressive debut season with Oxford United, dropped deep at times to pick up the ball and run at his marker, although his runs failed to create any clear-cut chances.
Linfield striker Lavery got a warm welcome when he came off the bench to replace Kyle Lafferty in the 59th minute.
His barnstorming runs have lit up Windsor Park during Linfield’s Europa League run and he was soon producing them in a green shirt, hitting the side netting with a shot from the first one before cleverly cutting the ball back to Thompson who blazed over the bar from a good position.
On a night when O’Neill was always expected to name an experimental side, nobody could have predicted young Cardiff City defender Ciaron Brown to start at centre-half.
The London-born defender was drafted into the senior squad from the Under-21 panel and lined up in the centre of the home defence alongside Tom Flanagan, who himself was winning only his second cap.
Brown delivered a fine long pass through to Josh Magennis early on, and won a flick-on in the opposition box that almost fell to the Hull City striker in front of goal, but he was also caught in possession a few times when he tried to take too much time on the ball.
Maurice Deville took it off him down the Luxembourg right and almost broke into the box, while the 21-year-old was also a bit over-ambitious when looking to spray long balls from the back.
Flanagan was alongside him in what must have been one of NI’s most inexperienced centre-half pairings ever, with Jonny Evans and Craig Cathcart left out of the squad with the Germany match on Monday in mind.
O’Neill made no secret ahead of kick-off of the fact that he was going to use this match to give as many of his squad players as much international experience as possible.
Donnelly and Lavery joined Flanagan in winning their second cap, while Jordan Thompson delivered a steady performance in the centre of the park on what was his third Northern Ireland appearance.
Midfielders George Saville and Corry Evans – who captained the side at home for the first time – played and will both be hoping for a starting place against Germany, while Conor McLaughlin filled in at right back for the injured Michael Smith.
It is five wins from five for O’Neill’s men, whose preparations will now intensify as they prepare to welcome the Germans to Belfast on Monday when the starting line-up will have a very different look.