Exemplo n.º 1
0
        public void GetOffloadsTestFishTypeInput()
        {
            var queryInput = new QueryParamsForTopList
            {
                fishType = "hyse"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.NotNull(result);
            Assert.Equal(result[0].Fish[0].Type, "hyse");

            queryInput.fishType = "";
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            queryInput = new QueryParamsForTopList
            {
                fishType = "hyse,cod"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            var fishType = new List <string>();

            for (int i = 0; i < result.Count; i++)
            {
                for (int j = 0; j < result[i].Fish.Count; j++)
                {
                    fishType.Add(result[i].Fish[j].Type);
                }
            }
            Assert.Contains("hyse", fishType);
            Assert.Contains("cod", fishType);
        }
Exemplo n.º 2
0
        List <TopListDto> IOffloadService.GetOffloads(QueryParamsForTopList filters)
        {
            try
            {
                var parsedFilters = new QueryOffloadsInput
                {
                    Count              = ParseCount(filters.count),
                    pageNo             = ParsePageNo(filters.pageNo, filters.count),
                    PreservationMethod = ParesPreservationMethod(filters.preservationMethod),
                    FishingGear        = ParseFishingGear(filters.fishingGear),
                    BoatLength         = parseBoatLength(filters.boatLength),
                    LandingTown        = ParseLandingTown(filters.landingTown),
                    LandingState       = ParseLandingState(filters.landingState),
                    Month              = ParseMonth(filters.month),
                    Year     = ParseYear(filters.year),
                    FishName = ParseFishName(filters.fishName),
                    fromDate = ParseFromDate(ParseMonth(filters.month), ParseYear(filters.year)),
                    toDate   = ParseToDate(ParseMonth(filters.month), ParseYear(filters.year)),
                };

                return(this._offloadRepo.GetFilteredResults(parsedFilters));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                Console.WriteLine("could not parse input");
                return(null);
            }
        }
Exemplo n.º 3
0
        public void GetOffloadsTestInputFishingGear()
        {
            var queryInput = new QueryParamsForTopList
            {
                fishingGear = "Line"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.NotNull(result);

            queryInput.fishingGear = "";
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            queryInput = new QueryParamsForTopList
            {
                fishingGear = "Line,troll"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            var fishingGear = new List <string>();

            for (int i = 0; i < result.Count; i++)
            {
                fishingGear.Add(result[i].BoatFishingGear);
            }
            Assert.Contains("troll", fishingGear);
            Assert.Contains("Line", fishingGear);
        }
Exemplo n.º 4
0
        public void GetOffloadsTestInputCount()
        {
            var queryInput = new QueryParamsForTopList
            {
                count = "10"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.Equal(10, result.Count);

            queryInput.count = "501";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(500, result.Count);

            queryInput.count = "0";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(10, result.Count);

            queryInput.count = "-1";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput.count = "Not a number";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput.count = "10.00";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput.count = "";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(10, result.Count);
        }
Exemplo n.º 5
0
        public void GetOffloadsTestInputLandingState()
        {
            var queryInput = new QueryParamsForTopList
            {
                landingState = "Ohio"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.NotNull(result);
            Assert.Equal(result[0].boatLandingState, "Ohio");

            queryInput.landingState = "";
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            queryInput = new QueryParamsForTopList
            {
                landingState = "Oslo,Reykjavík"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            var landingState = new List <string>();

            for (int i = 0; i < result.Count; i++)
            {
                landingState.Add(result[i].boatLandingState);
            }
            Assert.Contains("Oslo", landingState);
            Assert.Contains("Reykjavík", landingState);
        }
Exemplo n.º 6
0
        public void GetOffloadsTestInputYear()
        {
            var queryInput = new QueryParamsForTopList
            {
                year = "2020"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.Equal(result[0].LandingDate.Value.Year, 2020);

            queryInput.year = "";
            result          = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            queryInput = new QueryParamsForTopList
            {
                year = "2020,2019"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            var testYear = new List <int>();

            for (int i = 0; i < result.Count; i++)
            {
                testYear.Add(result[i].LandingDate.Value.Year);
            }
            Assert.Contains(2019, testYear);
            Assert.Contains(2020, testYear);

            queryInput = new QueryParamsForTopList
            {
                year = "3000"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput = new QueryParamsForTopList
            {
                year = "1999"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput = new QueryParamsForTopList
            {
                year = "-1"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput = new QueryParamsForTopList
            {
                year = "Ekki tala"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);
        }
Exemplo n.º 7
0
        public IActionResult Get([FromQuery] QueryParamsForTopList input)
        {
            var resp = _OffloadService.GetOffloads(input);

            if (resp != null)
            {
                return(Ok(resp));
            }
            else
            {
                return(this.BadRequest());
            }
        }
Exemplo n.º 8
0
        public void GetOffloadsTestInputBoatLength()
        {
            var queryInput = new QueryParamsForTopList
            {
                boatLength = "11m - 14,99m"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.InRange(result[0].BoatLength, 11, 14.99);

            queryInput.boatLength = "";
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            queryInput = new QueryParamsForTopList
            {
                boatLength = "11,14.99"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);
            Assert.InRange(result[0].BoatLength, 10, 14.99);
        }
Exemplo n.º 9
0
        public void GetOffloadsTestInputMultipleInput()
        {
            var queryInput = new QueryParamsForTopList
            {
                count       = "50",
                fishingGear = "troll"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.Equal(result.Count, 50);
            Assert.Equal(result[0].BoatFishingGear, "troll");

            queryInput = new QueryParamsForTopList
            {
                count       = "50",
                fishingGear = "troll",
                boatLength  = "0,11"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(result.Count, 50);
            Assert.Equal(result[0].BoatFishingGear, "troll");
            Assert.InRange(result[0].BoatLength, 0, 11);

            queryInput = new QueryParamsForTopList
            {
                count       = "50",
                fishingGear = "troll",
                boatLength  = "0,11",
                landingTown = "oslo"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(result.Count, 50);
            Assert.Equal(result[0].BoatFishingGear, "troll");
            Assert.InRange(result[0].BoatLength, 0, 11);
            Assert.Equal(result[0].boatLandingTown, "oslo");

            queryInput = new QueryParamsForTopList
            {
                count        = "50",
                fishingGear  = "troll",
                boatLength   = "0,11",
                landingTown  = "oslo",
                landingState = "Ohio"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(result.Count, 50);
            Assert.Equal(result[0].BoatFishingGear, "troll");
            Assert.InRange(result[0].BoatLength, 0, 11);
            Assert.Equal(result[0].boatLandingTown, "oslo");
            Assert.Equal(result[0].boatLandingState, "Ohio");

            queryInput = new QueryParamsForTopList
            {
                count        = "50",
                fishingGear  = "troll",
                boatLength   = "0,11",
                landingTown  = "oslo",
                landingState = "Ohio",
                month        = "1"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(result.Count, 50);
            Assert.Equal(result[0].BoatFishingGear, "troll");
            Assert.InRange(result[0].BoatLength, 0, 11);
            Assert.Equal(result[0].boatLandingTown, "oslo");
            Assert.Equal(result[0].boatLandingState, "Ohio");
            Assert.Equal(result[0].LandingDate.Value.Month, 1);


            queryInput = new QueryParamsForTopList
            {
                count        = "50",
                fishingGear  = "troll",
                boatLength   = "0,11",
                landingTown  = "oslo",
                landingState = "Ohio",
                month        = "1",
                year         = "2020"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);
        }
Exemplo n.º 10
0
        public void GetOffloadsTestInputMonth()
        {
            var queryInput = new QueryParamsForTopList
            {
                month = "januar"
            };
            var result = _OffloadService.GetOffloads(queryInput);

            Assert.Equal(result[0].LandingDate.Value.Month, 1);

            queryInput.month = "";
            result           = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            queryInput = new QueryParamsForTopList
            {
                month = "1"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Equal(result[0].LandingDate.Value.Month, 1);

            queryInput = new QueryParamsForTopList
            {
                month = "1,februar,3"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.NotNull(result);

            var testMonth = new List <int>();

            for (int i = 0; i < result.Count; i++)
            {
                testMonth.Add(result[i].LandingDate.Value.Month);
            }
            Assert.Contains(1, testMonth);
            Assert.Contains(2, testMonth);
            Assert.Contains(3, testMonth);


            queryInput = new QueryParamsForTopList
            {
                month = "13"
            };
            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);

            queryInput = new QueryParamsForTopList
            {
                month = "0"
            };

            queryInput = new QueryParamsForTopList
            {
                month = "-1"
            };

            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);
            queryInput = new QueryParamsForTopList
            {
                month = "Ekki tala"
            };

            result = _OffloadService.GetOffloads(queryInput);
            Assert.Null(result);
        }