public void AEstrela_Dominio_ProcurarCaminho_DeveRetornaMenorCaminho_InicioFinalMatriz() { int alturaGrid = 10; int larguraGrid = 10; decimal custoDiagonal = 1.4m; decimal custoVH = 1; int inicioX = 0; int inicioY = 9; int finalX = 9; int finalY = 9; inicial = new Nodo(inicioX, inicioY); destino = new Nodo(finalX, finalY); bloqueios = new List <Nodo>() { new Nodo(4, 0), new Nodo(4, 1), new Nodo(4, 2), new Nodo(4, 3), new Nodo(4, 4), new Nodo(4, 5), new Nodo(4, 6), new Nodo(4, 7) }; aEstrela = new AEstrelaPathfind(alturaGrid, larguraGrid, bloqueios, inicial, destino, custoDiagonal, custoVH); int numeroDeNodosEsperados = 9; aEstrela.Bloqueados = bloqueios; List <Nodo> resultado = aEstrela.ProcurarCaminho(); resultado.Count.Should().Be(numeroDeNodosEsperados); }
private void buttonBuscar_Click(object sender, System.EventArgs e) { _timer = new Stopwatch(); _timer.Start(); _algoritmo = new AEstrelaPathfind( Convert.ToInt32(Math.Round(numericUpDownDimensao.Value)), Convert.ToInt32(Math.Round(numericUpDownDimensao.Value)), _bloqueados, _inicial, _destino, numericUpDownCustoDiag.Value, numericUpDownCustoVH.Value); _caminho = _algoritmo.ProcurarCaminho(); _gerados = _algoritmo.Gerados; _expandidos = _algoritmo.Expandidos; _timer.Stop(); PintarGrid(); AtribuirEstatisticas(); }
public void AEstrela_Dominio_ProcurarCaminho_DeveRetornaMenorCaminho_InicioPenultimaLinha() { int alturaGrid = 20; int larguraGrid = 20; decimal custoDiagonal = 1.4m; decimal custoVH = 1; int inicioX = 0; int inicioY = 18; int finalX = 19; int finalY = 19; inicial = new Nodo(inicioX, inicioY); destino = new Nodo(finalX, finalY); bloqueios = new List <Nodo>(); aEstrela = new AEstrelaPathfind(alturaGrid, larguraGrid, bloqueios, inicial, destino, custoDiagonal, custoVH); int numeroDeNodosEsperados = 19; aEstrela.Bloqueados = bloqueios; List <Nodo> resultado = aEstrela.ProcurarCaminho(); resultado.Count.Should().Be(numeroDeNodosEsperados); }