public void TestInitialize()
 {
     notificationProviderMock = new NotificationProviderMock();
     NotificationMessageProvider.Initialize(notificationProviderMock, 1000000);
     apiConnectorMock      = new ApiConnectorMock();
     navigationManagerMock = new NavigationManagerMock();
 }
        ///<inheritdoc/>
        public override async Task <bool> InitializeAsync()
        {
            bool result = await base.InitializeAsync();

            if (!result)
            {
                return(false);
            }

            Dictionary <string, object> parameters = new Dictionary <string, object>()
            {
                { nameof(Card.DeckId), Entity.DeckId }
            };
            ApiReply <List <PracticeHistoryEntry> > reply = await ApiConnector.GetAsync <PracticeHistoryEntry>(parameters);

            if (!reply.WasSuccessful)
            {
                NotificationMessageProvider.ShowErrorMessage(reply.ResultMessage);
                return(false);
            }

            PracticeHistoryEntries.AddRange(reply.Result);
            SelectableDisplayUnits.Add(EntityNameHelper.GetName <Deck>());
            SelectableDisplayUnits.AddRange(Entity.Cards.Select(card => card.GetDisplayName()));
            foreach (Card card in Entity.Cards)
            {
                cardIdLookup.Add(card.GetDisplayName(), card.CardId);
            }
            SelectedDisplayUnit = SelectableDisplayUnits.First();
            return(true);
        }
 public void TestInitialize()
 {
     notificationProviderMock = new NotificationProviderMock();
     NotificationMessageProvider.Initialize(notificationProviderMock, 1000000);
     mock        = new ApiConnectorMock();
     saveCommand = new EntitySaveCommand <Card>(mock)
     {
         Entity = card
     };
 }
Beispiel #4
0
 public void TestInitialize()
 {
     notificationProviderMock = new NotificationProviderMock();
     NotificationMessageProvider.Initialize(notificationProviderMock, 1000000);
     apiConnectorMock      = new ApiConnectorMock();
     navigationManagerMock = new NavigationManagerMock();
     viewModel             = new TestViewModel(navigationManagerMock, apiConnectorMock)
     {
         Id = 12
     };
 }
 public void TestInitialize()
 {
     notificationProviderMock = new NotificationProviderMock();
     NotificationMessageProvider.Initialize(notificationProviderMock, 1000000);
     mock = new ApiConnectorMock();
     dialogProviderMock = new DialogProviderMock();
     deleteCommand      = new EntityDeleteCommand <Card>(mock)
     {
         Entity = card
     };
     ModalDialogManager.Initialize(dialogProviderMock);
 }
Beispiel #6
0
        public async Task ErrorOnLoadingPracticeHistoryEntriesTest()
        {
            NotificationProviderMock notificationProviderMock = new NotificationProviderMock();

            NotificationMessageProvider.Initialize(notificationProviderMock, 500000);
            ApiConnectorMock        mock      = CreateApiConnectorMock(deck, false, null);
            DeckStatisticsViewModel viewModel = new DeckStatisticsViewModel(navigationManagerMock, mock);
            bool result = await viewModel.InitializeAsync();

            Assert.IsFalse(result);
            Assert.AreEqual(NotificationKind.ErrorNotification, notificationProviderMock.NotificationKind);
            Assert.AreEqual("test-error", notificationProviderMock.Message);
        }
        private async Task DeleteCoreAsync(TEntity entity)
        {
            ApiReply reply = await ApiConnector.DeleteAsync(entity);

            if (reply.WasSuccessful)
            {
                NotificationMessageProvider.ShowSuccessMessage(Messages.EntityDeleted.FormatWith(entity.GetDisplayName()));
                OnDeletedAction?.Invoke(entity);
            }
            else
            {
                NotificationMessageProvider.ShowErrorMessage(reply.ResultMessage);
            }
            IsEnabled = true;
        }
        ///<inheritdoc/>
        public override async void ExecuteCommand(object param = null)
        {
            ApiReply <TEntity> reply;

            if (IsNewEntity)
            {
                reply = await ApiConnector.PostAsync(Entity);
            }
            else
            {
                reply = await ApiConnector.PutAsync(Entity);
            }

            if (reply.WasSuccessful)
            {
                NotificationMessageProvider.ShowSuccessMessage(Messages.EntitySaved.FormatWith(Entity.GetDisplayName()));
                OnSavedAction.Invoke(reply.Result);
            }
            else
            {
                NotificationMessageProvider.ShowErrorMessage(reply.ResultMessage);
            }
        }
        /// <summary>
        /// Loads the Entity
        /// </summary>
        protected virtual async Task <bool> LoadEntityAsync()
        {
            ApiReply <TEntity> reply = await ApiConnector.GetAsync <TEntity>(Id);

            if (reply.WasSuccessful)
            {
                Entity = reply.Result;
                return(true);
            }
            else
            {
                if (reply.StatusCode == System.Net.HttpStatusCode.NotFound)
                {
                    NotificationMessageProvider.ShowErrorMessage(
                        Errors.EntityDoesNotExist.FormatWith(EntityNameHelper.GetName <TEntity>(), Id));
                }
                else
                {
                    NotificationMessageProvider.ShowErrorMessage(reply.ResultMessage);
                }
                return(false);
            }
        }
        public async Task ErrorOnLoadingPracticeHistoryEntriesTest()
        {
            NotificationProviderMock notificationProviderMock = new NotificationProviderMock();

            NotificationMessageProvider.Initialize(notificationProviderMock, 500000);
            Card card = new Card()
            {
                CardId = 1
            };

            card.Fields.Add(new CardField()
            {
                FieldId = 1, FieldName = "Field 1"
            });
            card.Fields.Add(new CardField()
            {
                FieldId = 2, FieldName = "Field 2"
            });
            ApiConnectorMock mock = new ApiConnectorMock();

            mock.Replies.Push(new ApiReply <List <PracticeHistoryEntry> >()
            {
                WasSuccessful = false,
                ResultMessage = "test-error"
            });
            mock.Replies.Push(new ApiReply <Card>()
            {
                WasSuccessful = true,
                Result        = card
            });
            CardStatisticsViewModel viewModel = new CardStatisticsViewModel(navigationManagerMock, mock);
            bool result = await viewModel.InitializeAsync();

            Assert.IsFalse(result);
            Assert.AreEqual(NotificationKind.ErrorNotification, notificationProviderMock.NotificationKind);
            Assert.AreEqual("test-error", notificationProviderMock.Message);
        }
Beispiel #11
0
        public void TestInitialize()
        {
            NotificationMessageProvider.Initialize(notificationProviderMock, 500000);

            template = new CardTemplate()
            {
                CardTemplateId = 1, Title = "template"
            };
            fieldDefinition1 = new CardFieldDefinition()
            {
                CardTemplate   = template,
                CardTemplateId = 1,
                FieldId        = 1,
                FieldName      = "Front"
            };
            fieldDefinition2 = new CardFieldDefinition()
            {
                CardTemplate   = template,
                CardTemplateId = 1,
                FieldId        = 2,
                FieldName      = "Back"
            };
            template.FieldDefinitions.Add(fieldDefinition1);
            template.FieldDefinitions.Add(fieldDefinition2);
            deck = new Deck()
            {
                DeckId = 1, DefaultCardTemplateId = 1, Title = "deck", DefaultCardTemplate = template
            };
            card1 = new Card()
            {
                CardId = 1, CardTemplateId = 1, CardTemplate = template, DeckId = 1, Deck = deck
            };
            field1 = new CardField()
            {
                CardFieldDefinition = fieldDefinition1,
                CardId         = 1,
                Card           = card1,
                CardTemplateId = 1,
                CardTemplate   = template,
                FieldId        = 1,
                FieldName      = "Front",
                Value          = "11",
                DueDate        = DateTime.Today
            };
            field2 = new CardField()
            {
                CardFieldDefinition = fieldDefinition2,
                CardId         = 1,
                Card           = card1,
                CardTemplateId = 1,
                CardTemplate   = template,
                FieldId        = 2,
                FieldName      = "Back",
                Value          = "12",
                DueDate        = DateTime.Today
            };
            card1.Fields.Add(field1);
            card1.Fields.Add(field2);
            card2 = new Card()
            {
                CardId = 2, CardTemplateId = 1, CardTemplate = template, DeckId = 1, Deck = deck
            };
            field3 = new CardField()
            {
                CardFieldDefinition = fieldDefinition1,
                CardId         = 2,
                Card           = card2,
                CardTemplateId = 1,
                CardTemplate   = template,
                FieldId        = 1,
                FieldName      = "Front",
                Value          = "21",
                DueDate        = DateTime.Today
            };
            field4 = new CardField()
            {
                CardFieldDefinition = fieldDefinition2,
                CardId         = 2,
                Card           = card2,
                CardTemplateId = 1,
                CardTemplate   = template,
                FieldId        = 2,
                FieldName      = "Back",
                Value          = "22",
                DueDate        = DateTime.Today.AddDays(1)
            };
            card2.Fields.Add(field3);
            card2.Fields.Add(field4);
            deck.Cards.Add(card1);
            deck.Cards.Add(card2);
        }
Beispiel #12
0
 public void TestInitialize()
 {
     NotificationMessageProvider.Initialize(notificationProviderMock, 500000);
 }
 public async Task ShowErrorMessageTest()
 {
     NotificationMessageProvider.ShowErrorMessage("test4");
     await TestCore(NotificationKind.ErrorNotification, "test4");
 }
 public async Task ShowInformationMessageTest()
 {
     NotificationMessageProvider.ShowInformationMessage("test3");
     await TestCore(NotificationKind.InformationNotification, "test3");
 }
 public async Task ShowWarningMessageTest()
 {
     NotificationMessageProvider.ShowWarningMessage("test2");
     await TestCore(NotificationKind.WarningNotification, "test2");
 }
 public async Task ShowSuccessMessageTest()
 {
     NotificationMessageProvider.ShowSuccessMessage("test1");
     await TestCore(NotificationKind.SuccessNotification, "test1");
 }
 public void TestInitialize()
 {
     mock = new NotificationProviderMock();
     NotificationMessageProvider.Initialize(mock, 100);
 }