Preciso fazer um jogo de forca, utilizado TDD. Já tentei fazer de várias maneiras, mais sempre acontece um erro no meio do caminho. Queria que as palavras fossem geradas automaticamente.
Alguém pode me ajudar e me dizer por onde começar??? Não sei se faço com List, ArrayList, Pilha, enfim… como que faço esse jogo.
Que erro no meio do caminho? O que você tentou fazer? Cadê sua classe de geração de palavras? E a de testes?
Outra coisa, não coloque no título do tópico palavras como “URGENTE”, “POR FAVOR”, “AJUDA PLEASE”, etc.
O fórum não é lugar para urgências.
já que é um jogo de forca, e é urgente… vou te ajudar…
usa Collection
:lol:
Desculpem pelos erros acima.
essa seria a classe teste
[code]
namespace TestePilha
{
[TestFixture]
public class Testes
{
private Palavra lista;
//metodo de inicialização
[SetUp]
public void Init()
{
lista = new Palavra();
}
[ExpectedException(typeof(InvalidOperationException))]
[Test]
public void lista_de_palavras_esta_vazia()
{
lista.Vazia();
}
[Test]
public void add_palavras_na_lista_e_buscar_topo_da_pilha()
{
//adicionando palavras na lista
String p = "casa";
lista.Salvar(p);
p = "parede";
lista.Salvar(p);
p = "computador";
lista.Salvar(p);
p = "blusa";
lista.Salvar(p);
Assert.IsFalse(lista.IsEmpty, "Após inclusão, IsEmpty, deve ser false");
//buscando topo da pilha
String recuperar = lista.Top() as String;
Assert.AreEqual(p, recuperar);
}[/code]
essa a classe Palavra
[code]
public class Palavra
{
private ArrayList _palavras = new ArrayList();
public Boolean IsEmpty
{
get { return this._palavras.Count== 0; }
}
public void Vazia()
{
if (this.IsEmpty)
throw new InvalidOperationException("Lista de Palavras Secretas Está Vazia");
}
public void Salvar(Object palavra_)
{
this._palavras.Insert(0, palavra_);
}
public Object Top()
{
return this._palavras[0];
}[/code]
qdo tento pegar o retorno do metodo Top, da erro.
me disseram que não posso pegar retorno de metodo do tipo object
mais então não sei como fazer.
Que erro dá?
E porque você está usando o NUnit e não o Microsoft TestTools que já vem integrado no visual? Com o TestTools vc poderia depurar a sua aplicação e ver qual é o problema.
A classe de testes nem mudaria muito:
[code]
namespace TestePilha
{
[TestClass]
public class Testes
{
private Palavra lista;
//metodo de inicialização
[TestInitialize()]
public void Init()
{
lista = new Palavra();
}
[ExpectedException(typeof(InvalidOperationException))]
[TestMethod]
public void lista_de_palavras_esta_vazia()
{
lista.Vazia();
}
[TestMethod]
public void add_palavras_na_lista_e_buscar_topo_da_pilha()
{
//adicionando palavras na lista
String p = "casa";
lista.Salvar(p);
p = "parede";
lista.Salvar(p);
p = "computador";
lista.Salvar(p);
p = "blusa";
lista.Salvar(p);
Assert.IsFalse(lista.IsEmpty, "Após inclusão, IsEmpty, deve ser false");
//buscando topo da pilha
String recuperar = lista.Top() as String;
Assert.AreEqual(p, recuperar);
}[/code]
ViniGodoy fiz o que vc me aconselhou. O erro foi o seguinte o teste “add_palavras_na_lista_e_buscar_topo_da_pilha()” PASSA
mais da erro de exceção como se a pilha estivesse vazia.