コード例 #1
0
        private CatService CreateCatService()
        {
            var userId  = Guid.Parse(User.Identity.GetUserId());
            var service = new CatService(userId);

            return(service);
        }
コード例 #2
0
        public async Task GetAll_Cats_Successful()
        {
            var cats = await CatService.GetAll();

            cats.Count().Should().BeGreaterThan(0);
            ApiClientMock.VerifyGetAll <Cat>();
        }
コード例 #3
0
        static void Main()
        {
            var catService = new CatService("Toddy", "Kon");

            catService.Run();
            Console.ReadLine();
        }
コード例 #4
0
        public ActionResult Edit(int id)
        {
            using (var ctx = new ApplicationDbContext())
            {
                ViewBag.ShelterList = ctx.Shelters.Select
                                          (s => new SelectListItem()
                {
                    Text  = s.ShelterName,
                    Value = s.ShelterId.ToString()
                }
                                          ).ToList();
            }
            var service = new CatService();
            var detail  = service.GetCatById(id);
            var model   =
                new CatEdit
            {
                CatId     = detail.CatId,
                CatName   = detail.CatName,
                CatSex    = detail.CatSex,
                CatWeight = detail.CatWeight,
                CatAge    = detail.CatAge,
                CatPrice  = detail.CatPrice,
                CatImage  = detail.CatImage,
                ShelterId = detail.ShelterId
            };

            return(View(model));
        }
コード例 #5
0
        public ActionResult Details(int id)
        {
            var svc   = new CatService();
            var model = svc.GetCatById(id);

            return(View(model));
        }
コード例 #6
0
        public ActionResult Index(string sortOrder)
        {
            ViewBag.NameSortParm  = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            ViewBag.PriceSortParm = sortOrder == "Price" ? "Price_desc" : "Price";
            var service = new CatService();
            var cats    = service.GetCats();

            switch (sortOrder)
            {
            case "name_desc":
                cats = cats.OrderByDescending(s => s.CatName);
                break;

            case "Price":
                cats = cats.OrderBy(s => s.CatPrice);
                break;

            case "Price_desc":
                cats = cats.OrderByDescending(s => s.CatPrice);
                break;

            default:
                cats = cats.OrderBy(s => s.CatName);
                break;
            }
            return(View(cats.ToList()));
        }
コード例 #7
0
        public async Task PetOwner_Service_Returns_Valid_Output_Test()
        {
            var mockPetOwnerService = new Mock <IPetOwnerService>();

            mockPetOwnerService
            .Setup(c => c.GetPetOwnersAsync())
            .ReturnsAsync(JsonConvert.DeserializeObject <IEnumerable <PetOwner> >(
                              "[{\r\n  \"name\": \"Bob\",\r\n  \"gender\": \"Male\",\r\n   \"age\": 23,\r\n  " +
                              "\"pets\": [\r\n  {\r\n \"name\": \"Glenfiditch\",\r\n  \"type\": \"Cat\"\r\n }," +
                              "\r\n {\r\n  \"name\": \"Fido\",\r\n  \"type\": \"Dog\"\r\n }\r\n ]\r\n  }, " +
                              "{\r\n    \"name\": \"Jennifer\",\r\n    \"gender\": \"Female\",\r\n    \"age\": 18,\r\n    " +
                              "\"pets\": [\r\n      {\r\n        \"name\": \"Daiels\",\r\n        \"type\": \"Cat\"\r\n      }\r\n    ]\r\n  }," +
                              "{\r\n    \"name\": \"Steve\",\r\n    \"gender\": \"Male\",\r\n    \"age\": 45,\r\n    \"pets\": null\r\n  }, " +
                              "{\r\n    \"name\": \"Fred\",\r\n    \"gender\": \"Male\",\r\n    \"age\": 40,\r\n    " +
                              "\"pets\": [\r\n      {\r\n        \"name\": \"Tom\",\r\n        \"type\": \"Cat\"\r\n      },\r\n" +
                              "{\r\n        \"name\": \"Max\",\r\n        \"type\": \"Cat\"\r\n      },\r\n " +
                              "     {\r\n        \"name\": \"Sam\",\r\n        \"type\": \"Dog\"\r\n      },\r\n      " +
                              "{\r\n        \"name\": \"Jim\",\r\n        \"type\": \"Cat\"\r\n      }\r\n    ]\r\n  }]"));

            var catService = new CatService(mockPetOwnerService.Object);

            var catsPerGender = await catService.GetCatsPerGenderAsync();

            var catsPerGenderList = catsPerGender as IList <CatsPerGender> ?? catsPerGender.ToList();

            Assert.Equal(2, catsPerGenderList.Count);
            Assert.Equal(4, catsPerGenderList.ElementAt(0).CatNames.Count());
            Assert.Equal("Glenfiditch", catsPerGenderList.ElementAt(0).CatNames.ElementAt(0));
            Assert.Equal("Tom", catsPerGenderList.ElementAt(0).CatNames.ElementAt(3));
            Assert.Equal(1, catsPerGenderList.ElementAt(1).CatNames.Count());
            Assert.Equal("Daiels", catsPerGenderList.ElementAt(1).CatNames.ElementAt(0));
        }
コード例 #8
0
        public async Task Create_Cat_Successful()
        {
            var cat = new Cat(Guid.NewGuid().ToString(), Ability.Napping);

            await CatService.Create(cat);

            MessageBrokerMock.Verify(MessageCommand.Create);
        }
コード例 #9
0
 public async Task CatFact(CommandContext ctx)
 {
     var results = CatService.GetCatFactAsync().Result;
     var output  = new DiscordEmbedBuilder()
                   .WithDescription($":cat: {JObject.Parse(results)["fact"]}")
                   .WithColor(DiscordColor.Orange);
     await ctx.RespondAsync(embed : output.Build()).ConfigureAwait(false);
 }
コード例 #10
0
        public async Task GetById_ForCatId_Successful()
        {
            var cat         = TestData.Cats.FirstOrDefault();
            var existingCat = await CatService.GetById(cat.Id);

            existingCat.Name.Should().Be(cat.Name);
            ApiClientMock.VerifyGetById <Cat>();
        }
コード例 #11
0
        public async Task <ActionResult <IEnumerable <string> > > Get()
        {
            var service = new CatService();
            var facts   = await service.GetFacts();

            var fact = await service.GetFact("59a60b8e6acf530020f3586e");

            return(new string[] { "value1", "value2" });
        }
コード例 #12
0
        public ActionResult DeletePost(int id)
        {
            var service = new CatService();

            service.DeleteCat(id);
            TempData["SaveResult"] = "Cat deleted.";

            return(RedirectToAction("Index"));
        }
コード例 #13
0
        public async Task TestCatService_GetCatListByOwnerGender_ShouldTwoItems()
        {
            HttpClient _client  = new HttpClient();
            var        api      = new agl_code_test_api.InfrastructureLayer.AGLApiComsumer(_client);
            CatService provider = new CatService(api);

            var result = await provider.ListAllCatsByOwner();

            Assert.Equal(2, result.Count);
        }
コード例 #14
0
        public async Task Delete_Cat_Successful()
        {
            var cat = TestData.Cats.FirstOrDefault();

            cat.Name = Guid.NewGuid().ToString();

            await CatService.Delete(cat.Id);

            MessageBrokerMock.Verify(MessageCommand.Delete);
        }
コード例 #15
0
ファイル: Create.cs プロジェクト: davamix/CatSharpHistory
        private IServiceTest Execute()
        {
            using (var context = new CatSharpContext(base.Options))
            {
                var service = new CatService(context);
                service.Create(new CatCreateDto("Cat 1", new DateTime(2018, 01, 01), null));
            }

            return(this);
        }
コード例 #16
0
        private IServiceTest Execute()
        {
            using (var context = new CatSharpContext(base.Options))
            {
                var service = new CatService(context);
                base.Result = service.GetAll();
            }

            return(this);
        }
コード例 #17
0
ファイル: Program.cs プロジェクト: novakvova/wpf911VPU
        static void InsertCat()
        {
            int         count;
            ICatService catService = new CatService();

            Console.WriteLine("На початку роботи котів: " + catService.Count());
            Console.WriteLine("Скільки котів додати в БД:");
            count = int.Parse(Console.ReadLine());
            catService.InsertCats(count);
            Console.WriteLine("У кінці роботи котів: " + catService.Count());
        }
コード例 #18
0
        public void GetCatsByFeMaleOwner()
        {
            // Arrange
            CatService catBusiness = new CatService(new PeopleRepository());
            Dictionary <Gender, IEnumerable <Pet> > result = catBusiness.GetCatsByOwnerGender();

            // Assert
            Assert.IsNotNull(result);
            Assert.IsNotNull(result[Gender.Female]);
            Assert.AreEqual("Garfield", result[Gender.Female].ToList()[0].name);
        }
コード例 #19
0
        public ActionResult Query(string sex)
        {
            CatService catService = new CatService();
            Cat        c          = catService.Query(sex).FirstOrDefault();

            if (c != null)
            {
                return(Content(c.Name));
            }
            return(Content("no"));
        }
コード例 #20
0
        public ActionResult CreateCat(Cat model)
        {
            Cat princess = new Cat();

            princess.Name   = "Princess";
            princess.Sex    = 'F';
            princess.Weight = 7.4f;
            CatService catService = new CatService();

            catService.Create(princess);
            return(Content("ok"));
        }
コード例 #21
0
        public async Task CatPic(CommandContext ctx)
        {
            var results = CatService.GetCatPhotoAsync().Result;

            if (string.IsNullOrWhiteSpace(results))
            {
                await BotServices.SendEmbedAsync(ctx, "Connection to random.cat failed!", EmbedType.Warning).ConfigureAwait(false);
            }
            var output = new DiscordEmbedBuilder()
                         .WithImageUrl(results)
                         .WithColor(DiscordColor.Orange);
            await ctx.RespondAsync(embed : output.Build()).ConfigureAwait(false);
        }
コード例 #22
0
        public void Index()
        {
            CatService catServices = new CatService(new PeopleRepository());

            // Arrange
            PetController controller = new PetController(catServices);

            // Act
            ViewResult result = controller.Index() as ViewResult;

            // Assert
            Assert.IsNotNull(result);
        }
コード例 #23
0
        public async Task PetOwner_Service_Returns_Null_Test()
        {
            var mockPetOwnerService = new Mock <IPetOwnerService>();

            mockPetOwnerService
            .Setup(c => c.GetPetOwnersAsync())
            .ReturnsAsync((IEnumerable <PetOwner>)null);

            var catService = new CatService(mockPetOwnerService.Object);

            var result = await catService.GetCatsPerGenderAsync();

            Assert.Null(result);
        }
コード例 #24
0
ファイル: MatchTests.cs プロジェクト: JuhBoy/CatMatchSolution
        public async Task ShouldFindMatch_WhenCatsAreAvailable()
        {
            using (var dbContext = DbContextFixture.GetDbContext())
            {
                IMatchService service    = new MatchService(dbContext, new RankingService(RankingValues.Limit, RankingValues.EvolutionCoef));
                ICatService   catService = new CatService(new HttpService(), dbContext, IConfigMock.GetCatsMock());
                await catService.InjectCats().ConfigureAwait(false); // Prepare cats

                MatchIds matchIds = await service.FindMatchAsync().ConfigureAwait(false);

                Assert.NotEqual(0, matchIds.Left);
                Assert.NotEqual(0, matchIds.Right);
            }
        }
コード例 #25
0
        private void ShowMessage()
        {
            Dispatcher.Invoke(new Action(() =>
            {
                btnAddRange.IsEnabled = false;
            }));
            ICatService catService = new CatService();

            catService.EventInsertItem += UpdateUIAsync;
            catService.InsertCats(240, _mrse);
            Dispatcher.Invoke(new Action(() =>
            {
                btnAddRange.IsEnabled = true;
            }));
        }
コード例 #26
0
        public async Task ShouldInjectCats_ProvidedByApi()
        {
            using (var dbContext = DbContextFixture.GetDbContext())
            {
                var service       = new CatService(new HttpService(), dbContext, IConfigMock.GetCatsMock());
                var previousCount = dbContext.Cats.Count();

                await service.InjectCats().ConfigureAwait(false);

                Cat[] cats = dbContext.Cats.ToArray();

                Assert.NotNull(cats);
                Assert.NotEmpty(cats);
                Assert.True(previousCount == cats.Length);
            }
        }
コード例 #27
0
        public async Task ShouldLoadCatWithDependency_WhenFilterAskTo()
        {
            using (var dbContext = DbContextFixture.GetDbContext())
            {
                var service = new CatService(new HttpService(), dbContext, IConfigMock.GetCatsMock());
                var cat     = await service.Get(1, new RequestOptions()
                {
                    IncludeMatchHistory = true
                }).ConfigureAwait(false);

                Assert.NotNull(cat);
                Assert.NotNull(cat.Rank);
                Assert.NotNull(cat.Informations);
                Assert.Empty(cat.Informations.History);
            }
        }
コード例 #28
0
        public void OneTimeSetUp()
        {
            Setup.Bootstrap(SetupType.Test);

            ApiClientMock              = new ApiClientMock();
            CatServiceMock             = new CatServiceMock();
            MessageBrokerMock          = new MessageBrokerMock <Cat>();
            MessageConsumerMock        = new MessageConsumerMock <Cat>();
            MessageConsumerServiceMock = new MessageServiceMock <Cat>();
            LoggerFactoryMock          = new LoggerFactoryMock();

            CatService      = new CatService(MessageBrokerMock.Instance, ApiClientMock.Instance);
            MessageConsumer = new MessageConsumer <Cat>(ApiClientMock.Instance, LoggerFactoryMock.Instance);
            MessageService  = new MessageService <Cat>(MessageBrokerMock.Instance, MessageConsumerMock.Instance, LoggerFactoryMock.Instance);
            ViewModel       = new MainViewModel(CatServiceMock.Instance);
        }
コード例 #29
0
        public async Task TestCatService_GetCatListByOwnerGender_ShouldIncludeBothMaleAndFemaleLists()
        {
            HttpClient _client  = new HttpClient();
            var        api      = new agl_code_test_api.InfrastructureLayer.AGLApiComsumer(_client);
            CatService provider = new CatService(api);

            var result = await provider.ListAllCatsByOwner();

            var maleList   = result.Where(x => x.OwnerGender == "Male").ToList();
            var femaleList = result.Where(x => x.OwnerGender == "Female").ToList();

            Assert.NotEmpty(maleList);
            Assert.Single(maleList);
            Assert.NotEmpty(femaleList);
            Assert.Single(femaleList);
        }
コード例 #30
0
ファイル: Update.cs プロジェクト: davamix/CatSharpHistory
        private IServiceTest Execute()
        {
            using (var context = new CatSharpContext(base.Options))
            {
                // Get the cat created
                var cat = context.Cats.AsNoTracking().Single(x => x.Name.Equals("Cat 1"));
                // Simulate the return value as CatGetDto
                var oldDto = cat.ToDto();
                // Create the new CatUpdateDto with the date to be updated
                var newDto = new CatUpdateDto(oldDto.Id, "Cat B", oldDto.BirthDate, oldDto.Weights);
                // Update
                var service = new CatService(context);
                service.Update(newDto);
            }

            return(this);
        }