spying showSetupDialog is also "internal" but this makes things easier here so maybe keep it