private void RaiseInitializedEvent(IShellVM shellVM)
        {
            var handler = Initialized;

            if (handler != null)
            {
                handler(this, new AssociatableEventArgs <IShellVM>(shellVM));
            }
        }
        public void Should_Give_Back_The_Instance_Of_IShellViewModel_In_Intialized_Event_Args()
        {
            IShellVM shellVM = null;

            Bootstarpper.Instance.Initialized += (sender, args) => shellVM = args.AssociatedObject;

            Bootstarpper.Instance.Boot();

            Assert.IsNotNull(shellVM, "Shell ViewModel is NULL");
        }
        public void Boot(string[] args, IStartupManager startupManager, IMessengerService messengerService)
        {
            _shellVM = _serviceProvider.GetInstance <IShellVM>();

            RaiseInitializedEvent(_shellVM);

            startupManager.Completed += appStartupManager_Completed;
            startupManager.Failed    += appStartupManager_Failed;

            startupManager.StartupProcedure();
        }