public void OnClick() { #region arrange var gameController = Substitute.For <IGameController>(); var gameLogicHandler = Substitute.For <ILogicHandler>(); var gameEngineInterface = Substitute.For <IGameEngineInterface>(); var dataLayer = Substitute.For <IDataLayer>(); var loseLogicProvider = new LoseLogicProvider(gameController, gameLogicHandler, gameEngineInterface, dataLayer); #endregion #region act loseLogicProvider.OnClick("btnGameOverMainMenu"); #endregion #region assert var uiInputStates = GetPrivateMember <Dictionary <UIInputAxis, bool> >("_uiInputStates", loseLogicProvider); Assert.IsTrue(uiInputStates[UIInputAxis.btnGameOverMainMenu]); #endregion }