Example #1
0
        /// <summary>
        /// Is best practice inject dependencies in constructor,
        /// This can be Mock in UnitTest
        /// </summary>
        /// <param name="loggerService">Logger service interface</param>
        public MainViewModel(ILoggerService loggerService, IAppInformation appInformation)
        {
            this.loggerService  = loggerService;
            this.appInformation = appInformation;

            this.initializeProperties();
        }
        /// <summary>
        /// To initialize fields when the class is instantiated
        /// </summary>
        void Initialize()
        {
            Paths      = new List <PathInformation>();
            _appInfo   = DependencyService.Get <IAppInformation>();
            _directory = DependencyService.Get <IDirectory>();

            SetListItems();
        }
Example #3
0
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 public AboutViewModel(IAppInformation appInformation,
                       IEmailAdapter emailAdapter,
                       IBrowserAdapter browserAdapter,
                       IStoreOperations storeOperations)
 {
     this.appInformation = appInformation;
     this.emailAdapter   = emailAdapter;
     this.browserAdapter = browserAdapter;
     storeFeatures       = storeOperations;
 }
Example #4
0
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
 /// <param name="composeEmailTask">Instance of a <see cref="IMvxComposeEmailTask" /> implementation.</param>
 /// <param name="webBrowserTask">Instance of a <see cref="IMvxWebBrowserTask" /> implementation.</param>
 /// <param name="storeOperations">Instance of a <see cref="IStoreOperations" /> implementation.</param>
 public AboutViewModel(IAppInformation appInformation,
                       IMvxComposeEmailTask composeEmailTask,
                       IMvxWebBrowserTask webBrowserTask,
                       IStoreOperations storeOperations)
 {
     this.appInformation   = appInformation;
     this.composeEmailTask = composeEmailTask;
     this.webBrowserTask   = webBrowserTask;
     storeFeatures         = storeOperations;
 }
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
 /// <param name="composeEmailTask">Instance of a <see cref="IMvxComposeEmailTask" /> implementation.</param>
 /// <param name="webBrowserTask">Instance of a <see cref="IMvxWebBrowserTask" /> implementation.</param>
 /// <param name="storeOperations">Instance of a <see cref="IStoreOperations" /> implementation.</param>
 public AboutViewModel(IAppInformation appInformation,
     IMvxComposeEmailTask composeEmailTask,
     IMvxWebBrowserTask webBrowserTask,
     IStoreOperations storeOperations)
 {
     this.appInformation = appInformation;
     this.composeEmailTask = composeEmailTask;
     this.webBrowserTask = webBrowserTask;
     storeFeatures = storeOperations;
 }
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
 /// <param name="emailComposeService">Instance of a <see cref="IEmailComposeService" /> implementation.</param>
 /// <param name="launcherService">Instance of a <see cref="ILauncherService" /> implementation.</param>
 /// <param name="storeService">Instance of a <see cref="IStoreService" /> implementation.</param>
 public AboutViewModel(IAppInformation appInformation,
                       IEmailComposeService emailComposeService,
                       ILauncherService launcherService,
                       IStoreService storeService)
 {
     this.appInformation      = appInformation;
     this.emailComposeService = emailComposeService;
     this.launcherService     = launcherService;
     this.storeService        = storeService;
 }
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
 /// <param name="emailComposeService">Instance of a <see cref="IEmailComposeService" /> implementation.</param>
 /// <param name="launcherService">Instance of a <see cref="ILauncherService" /> implementation.</param>
 /// <param name="storeService">Instance of a <see cref="IStoreService" /> implementation.</param>
 public AboutViewModel(IAppInformation appInformation,
     IEmailComposeService emailComposeService,
     ILauncherService launcherService,
     IStoreService storeService)
 {
     this.appInformation = appInformation;
     this.emailComposeService = emailComposeService;
     this.launcherService = launcherService;
     this.storeService = storeService;
 }
Example #8
0
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
 /// <param name="composeEmailTask">Instance of a <see cref="IMvxComposeEmailTask" /> implementation.</param>
 /// <param name="webBrowserTask">Instance of a <see cref="IMvxWebBrowserTask" /> implementation.</param>
 /// <param name="storeOperations">Instance of a <see cref="IStoreOperations" /> implementation.</param>
 public AboutViewModel(IAppInformation appInformation,
                       IMvxComposeEmailTask composeEmailTask,
                       IMvxWebBrowserTask webBrowserTask,
                       IStoreOperations storeOperations,
                       IMvxLogProvider logProvider,
                       IMvxNavigationService navigationService) : base(logProvider, navigationService)
 {
     this.appInformation   = appInformation;
     this.composeEmailTask = composeEmailTask;
     this.webBrowserTask   = webBrowserTask;
     storeFeatures         = storeOperations;
 }
Example #9
0
 /// <summary>
 ///     Creates an AboutViewModel Object
 /// </summary>
 public AboutViewModel(IAppInformation appInformation,
                       IEmailAdapter emailAdapter,
                       IBrowserAdapter browserAdapter,
                       IStoreOperations storeOperations,
                       IMvxLogProvider logProvider,
                       IMvxNavigationService navigationService) : base(logProvider, navigationService)
 {
     this.appInformation = appInformation;
     this.emailAdapter   = emailAdapter;
     this.browserAdapter = browserAdapter;
     storeFeatures       = storeOperations;
 }
Example #10
0
        public void Version_NoParams_ReturnCorrectMail()
        {
            IAppInformation appinfos = Substitute.For <IAppInformation>();

            appinfos.GetVersion.Returns("42");

            new AboutViewModel(appinfos,
                               Substitute.For <IEmailAdapter>(),
                               Substitute.For <IBrowserAdapter>(),
                               Substitute.For <IStoreOperations>())
            .Version
            .Should().Be("42");
        }
        /// <summary>
        ///     Creates an AboutViewModel Object
        /// </summary>
        /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
        /// <param name="composeEmailTask">Instance of a <see cref="IMvxComposeEmailTask" /> implementation.</param>
        /// <param name="webBrowserTask">Instance of a <see cref="IMvxWebBrowserTask" /> implementation.</param>
        /// <param name="storeFeatures">Instance of a <see cref="IStoreFeatures" /> implementation.</param>
        public AboutViewModel(IAppInformation appInformation,
            IMvxComposeEmailTask composeEmailTask,
            IMvxWebBrowserTask webBrowserTask,
            IStoreFeatures storeFeatures)
        {
            this.appInformation = appInformation;
            this.composeEmailTask = composeEmailTask;
            this.webBrowserTask = webBrowserTask;
            this.storeFeatures = storeFeatures;

            GoToWebsiteCommand = new MvxCommand(GoToWebsite);
            SendMailCommand = new MvxCommand(SendMail);
            RateAppCommand = new MvxCommand(RateApp);
            GoToRepositoryCommand = new MvxCommand(GoToRepository);
        }
        /// <summary>
        ///     Creates an AboutViewModel Object
        /// </summary>
        /// <param name="appInformation">Instance of a <see cref="IAppInformation" /> implementation.</param>
        /// <param name="composeEmailTask">Instance of a <see cref="IMvxComposeEmailTask" /> implementation.</param>
        /// <param name="webBrowserTask">Instance of a <see cref="IMvxWebBrowserTask" /> implementation.</param>
        /// <param name="storeFeatures">Instance of a <see cref="IStoreFeatures" /> implementation.</param>
        public AboutViewModel(IAppInformation appInformation,
                              IMvxComposeEmailTask composeEmailTask,
                              IMvxWebBrowserTask webBrowserTask,
                              IStoreFeatures storeFeatures)
        {
            this.appInformation   = appInformation;
            this.composeEmailTask = composeEmailTask;
            this.webBrowserTask   = webBrowserTask;
            this.storeFeatures    = storeFeatures;

            GoToWebsiteCommand    = new MvxCommand(GoToWebsite);
            SendMailCommand       = new MvxCommand(SendMail);
            RateAppCommand        = new MvxCommand(RateApp);
            GoToRepositoryCommand = new MvxCommand(GoToRepository);
        }