public TheoryService(Case caseForMountTheory)
 {
     this.caseForMountTheory = caseForMountTheory;
     this.indexGun = 0;
     this.indexLocal = 0;
     this.indexSuspec = 0;
 }
        // Arrange
        public CarregaDadosTests()
        {
            DirectoryInfo directoryInfo = new DirectoryInfo(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location));

            string localFiles = directoryInfo.Parent.Parent.FullName + "\\App_Data\\data.json";

            this.context = new DataContext(localFiles);
            this.caseInvestigation = new Case();
            this.caseInvestigation.Title = "O empresário Bill G.";
        }
        private Case GetCase()
        {
            Case caseInvestigation = new Case()
            {
                Title = "O assasinato de Bill G",
                Guns = dataContext.Guns,
                Locals = dataContext.Locals,
                Suspects = dataContext.Suspects
            };

            return caseInvestigation;
        }
        public static Case MockCase()
        {
            Mock<IDataContext> mockContext = MockContext();

            Case casoMock = new Case()
            {
                Title = "Teste",
                Guns = mockContext.Object.Guns,
                Locals = mockContext.Object.Locals,
                Suspects = mockContext.Object.Suspects,
            };

            return casoMock;
        }
        public TheoryTests()
        {
            this.mockContext = new Mock<IDataContext>();
            this.mockContext.Setup(m => m.Locals).Returns(new List<string>() { "Local 1", "Local 2", "Local 3" });
            this.mockContext.Setup(m => m.Guns).Returns(new List<string>() { "Arma 1", "Arma 2" });
            this.mockContext.Setup(m => m.Suspects).Returns(new List<string>() { "Suspeito 1", "Suspeito 2", "Suspeito 3", "Suspeito 4" });

            this.caso = new Case()
            {
                Title = "Teste",
                Guns = mockContext.Object.Guns,
                Locals = mockContext.Object.Locals,
                Suspects = mockContext.Object.Suspects,
            };

            this.servicoDeTeoria = new TheoryService(this.caso);
        }
        public Response SolveCase(Case caseToResulve, Witness witness)
        {
            this.interrogationService = new InterrogationService(witness, caseToResulve);

            return this.interrogationService.Start();
        }
 public InterrogationServiceTests()
 {
     this.mockContext = new Mock<IDataContext>();
     this.caso = HelpMock.MockCase();
 }
 public InterrogationService(Witness witness, Case caseForInterrogation)
 {
     this.witness = witness;
     this.theoryService = new TheoryService(caseForInterrogation);
 }