Ejemplo n.º 1
0
        public async Task UpdatesNameOfExistingListWithDTOName()
        {
            const string USER     = "******";
            const string ID       = "id";
            const string OLD_NAME = "old name";
            const string NEW_NAME = "new name";

            var(context, nowProvider, config) = CreateDeps();
            using (context)
            {
                // seed DB
                context.Lists.Add(new List
                {
                    Id   = ID,
                    Name = OLD_NAME
                });

                context.SaveChanges();

                var dto = new ListDTO
                {
                    Id   = ID,
                    Name = NEW_NAME
                };

                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                Assert.AreEqual(NEW_NAME, context.Lists.First().Name);
            }
        }
Ejemplo n.º 2
0
        public async Task UpdatesUpdatedDateOfExistingListWithNow()
        {
            const string USER        = "******";
            const string ID          = "id";
            var          updatedDate = new DateTime(2020, 1, 1);

            var(context, nowProvider, config) = CreateDeps(dateTime: updatedDate);
            using (context)
            {
                // seed DB
                context.Lists.Add(new List
                {
                    Id = ID
                });

                context.SaveChanges();

                var dto = new ListDTO
                {
                    Id = ID,
                };

                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                Assert.AreEqual(updatedDate, context.Lists.First().Updated);
            }
        }
Ejemplo n.º 3
0
        public async Task AddsListContributorIfNoneExistForListAndUser()
        {
            const string USER = "******";
            const string ID   = "id";

            var(context, nowProvider, config) = CreateDeps();
            using (context)
            {
                // seed DB
                context.Lists.Add(new List
                {
                    Id = ID
                });

                context.SaveChanges();

                var dto = new ListDTO
                {
                    Id = ID,
                };

                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                Assert.AreEqual(1, context.ListContributors.Count());
                Assert.AreEqual(ID, context.ListContributors.First().ListId);
                Assert.AreEqual(USER, context.ListContributors.First().UserIdent);
            }
        }
Ejemplo n.º 4
0
        public SearchForm(DhtNetwork network)
        {
            InitializeComponent();

            if(network.Core.Sim != null)
                Sim = network.Core.Sim.Internet;

            Network = network;

            Text = "Search (" + Network.GetLabel() + ")";

            OnUpdateList = new UpdateListHandler(UpdateList);
        }
Ejemplo n.º 5
0
        public SearchForm(DhtNetwork network)
        {
            InitializeComponent();

            if (network.Core.Sim != null)
            {
                Sim = network.Core.Sim.Internet;
            }

            Network = network;

            Text = "Search (" + Network.GetLabel() + ")";

            OnUpdateList = new UpdateListHandler(UpdateList);
        }
Ejemplo n.º 6
0
        public async Task DoesNothingIfNoExistingFoundForId()
        {
            const string USER = "******";
            const string ID   = "id";

            var(context, nowProvider, config) = CreateDeps();
            using (context)
            {
                var dto = new ListDTO
                {
                    Id = ID
                };
                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                // assert nothing an exception means failure
            }
        }
Ejemplo n.º 7
0
        public async Task ReturnsUnitValue()
        {
            const string USER = "******";
            const string ID   = "id";

            var(context, nowProvider, config) = CreateDeps();
            using (context)
            {
                var dto = new ListDTO
                {
                    Id = ID,
                };

                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                Assert.AreEqual(Unit.Value, result);
            }
        }
Ejemplo n.º 8
0
        public async Task ThrowsExceptionWhenListItemLimitReached()
        {
            const string USER = "******";
            const string ID   = "id";

            var(context, nowProvider, _) = CreateDeps();

            var config = CreateConfigWithListItemLimit(0);

            using (context)
            {
                var dto = new ListDTO
                {
                    Id = ID
                };
                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);

                await Assert.ThrowsExceptionAsync <RequestFailedException>(() => handler.Handle(request, CancellationToken.None));
            }
        }
Ejemplo n.º 9
0
        public async Task UpdatesListItemCompleted()
        {
            const string USER      = "******";
            const string ID        = "id";
            const string ITEM_ID   = "1";
            const bool   COMPLETED = true;

            var(context, nowProvider, config) = CreateDeps();
            using (context)
            {
                // seed DB
                context.Lists.Add(new List
                {
                    Id = ID
                });

                context.SaveChanges();

                var dto = new ListDTO
                {
                    Id    = ID,
                    Items = new List <ListItemDTO>
                    {
                        new ListItemDTO
                        {
                            Id        = ITEM_ID,
                            Completed = COMPLETED
                        }
                    }
                };

                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                Assert.AreEqual(1, context.ListItems.Count());
                Assert.AreEqual(COMPLETED, context.ListItems.First().Completed);
            }
        }
Ejemplo n.º 10
0
        public async Task RemovesOldListItemsForList()
        {
            const string USER    = "******";
            const string ID      = "id";
            const string ITEM_ID = "1";

            var(context, nowProvider, config) = CreateDeps();
            using (context)
            {
                // seed DB
                context.Lists.Add(new List
                {
                    Id    = ID,
                    Items = new List <ListItem>
                    {
                        new ListItem()
                        {
                            Id = ITEM_ID
                        }
                    }
                });

                context.SaveChanges();

                var dto = new ListDTO
                {
                    Id = ID
                };

                var request = new UpdateListRequest(dto, USER);
                var handler = new UpdateListHandler(context, nowProvider, config);
                var result  = await handler.Handle(request, CancellationToken.None);

                Assert.AreEqual(0, context.ListItems.Count());
            }
        }