"This is an historic act of deception," state Sen. Jeff Jackson, D-Mecklenburg, tells WFAE's Sarah Delia.

The North Carolina House of Representatives unexpectedly voted to override Gov. Roy Cooper's veto of the state budget early Wednesday morning in what the governor called "an assault" on democracy.

The vote was 55-9 with nearly half of House members missing. Democrats cried foul, alleging the vote was a surprise. The General Assembly has a Republican majority, but enough Democrats won seats in last year's election to take away the GOP's veto-proof "super majority."

Cooper, a Democrat, vetoed the budget bill in June, saying he wanted the state to expand Medicaid, among other initiatives. Budget talks have been in a stalemate since.

The unexpected vote came shortly before 9 a.m., with just over half of House members present. Only 12 were Democrats, and not all of them had a chance to vote. Among them were Reps. Deb Butler of New Hanover County and Mary Belk of Mecklenburg County, who shouted down the House speaker as votes were taken.

"At this moment in time, you are doing the unspeakable," Butler said after the votes were tallied. "Is this the legacy you want? Are you proud of this? Are you proud of yourselves? Look at you. There’s no one here, because we have been deceived."

Democrats say they had been told no votes would be held Wednesday morning, although House Speaker Tim Moore, R-Cleveland, says no such message was given.

Moore said in a news conference Wednesday afternoon that a calendar put up the night before included the budget bill.

"I've made it clear … on the floor, everywhere: If I see an opportunity to override this veto, I was going to take it," Moore said.

The budget must still go to a vote in the state Senate, where Democrats are vowing to block any Republican efforts to override the governor.

Democratic state Sen. Jeff Jackson of Mecklenburg County called the move "plainly unethical behavior."

Jackson said Tuesday's session was supposed to be a "skeleton session" – one in which "no substantive business" would be conducted. Those happen frequently in order for the General Assembly to stay in session.

"When someone in leadership says it's going to be a skeleton session, that rule is respected," Jackson told WFAE. "They don't then turn that into an ambush on the most important vote of the entire session. This is a historic act of deception, frankly."

In a news conference Wednesday afternoon, Cooper decried the way the vote was taken, saying he'd "never seen anything like this" in more than 30 years in state government.

"Today was an assault on North Carolina democracy," Cooper said. "No doubt about it."

At a news conference after the surprise vote, Democratic House leader Darren Jackson of Wake County said he had been told by state Rep. David Lewis, R-Harnett, that there would be no votes Wednesday morning.

"He sat down at the clerk’s chair, and I asked him should we plan to be here at 8:30 for votes," Jackson said. "He informed me no. He apologized. He forgot to mention that."

But Lewis, speaking to reporters Wednesday afternoon, said he publicly announced on Tuesday that there would be votes.

"I never said or represented to any member that there would be no recorded votes in this morning's session," Lewis said.

The News & Observer of Raleigh reports Jackson will be calling on Lewis to recall the veto vote before it goes to the state Senate for consideration.

Corrected Sept. 11, 2019 - A previous version of this story incorrectly reported the number of Democrats present during Friday's vote. There were 12, not nine.