Summary

Class:SampleDotNetCore2RestStub.Controllers.PersonController
Assembly:SampleDotNetCore2RestStub
File(s):C:\SampleDotNetCore2RestStub\src\SampleDotNetCore2RestStub\Controllers\PersonController.cs
Covered lines:10
Uncovered lines:7
Coverable lines:17
Total lines:43
Line coverage:58.8%

Metrics

MethodCyclomatic complexity NPath complexity Sequence coverage Branch coverage
.ctor(...)10100100
GetPerson(...)10100100
RemovePerson()1000
GetPersons()10100100
AddPerson(...)1000

File(s)

C:\SampleDotNetCore2RestStub\src\SampleDotNetCore2RestStub\Controllers\PersonController.cs

#LineLine coverage
 1using System.Collections.Generic;
 2using System.Linq;
 3using Microsoft.AspNetCore.Mvc;
 4using SampleDotNetCore2RestStub.Models;
 5using SampleDotNetCore2RestStub.Repositories;
 6
 7namespace SampleDotNetCore2RestStub.Controllers
 8{
 9    public class PersonController : Controller
 10    {
 11        private readonly IPersonRepository _personRepository;
 12
 213        public PersonController(IPersonRepository personRepository)
 214        {
 215            _personRepository = personRepository;
 216        }
 17
 18        [HttpGet("person/get/{id}")]
 19        public Person GetPerson(int id)
 120        {
 121            return _personRepository.GetById(id);
 122        }
 23
 24        [HttpGet("person/remove")]
 25        public string RemovePerson()
 026        {
 027            _personRepository.Remove();
 028            return "Last person remove. Total count: " + _personRepository.GetCount();
 029        }
 30
 31        [HttpGet("person/all")]
 32        public List<Person> GetPersons()
 133        {
 134            return _personRepository.GetAll();
 135        }
 36
 37        [HttpPost("person/save")]
 38        public string AddPerson(Person person)
 039        {
 040            return _personRepository.Save(person);
 041        }
 42    }
 43}