public void Given_ItemsArray_When_CalculatingPath_Expect_CorrectResult(List <int> items, bool pathExists, List <TraverseStep> path)
        {
            ArrayPathCalculationResult calculationResult = _service.CalculatePath(items);

            Assert.That(calculationResult, Is.Not.Null);
            Assert.That(calculationResult.PathExists, Is.EqualTo(pathExists));
            CollectionAssert.AreEqual(items, calculationResult.Items);
            CollectionAssert.AreEqual(path, calculationResult.Path);
        }
Example #2
0
        public ActionResult <ArrayPathCalculationResult> CalculateArrayPath([FromBody] ItemsRequest itemsRequest)
        {
            if (itemsRequest?.Items == null)
            {
                return(BadRequest(new { Reason = "BadRequest", Message = "Items cannot be empty." }));
            }

            ArrayPathCalculationResult result = _service.CalculatePath(itemsRequest.Items);

            return(Ok(result));
        }