Oi gente,
Já coloquei no ar o código do Kata do EP1 em Java que mostrei na aula de hoje.
Não dei uma revisada boa mas acho que ele está certo com os testes mais interessantes.
Ficaram faltando testes para o main (métodos para criarAtendentes, criarClientes, criarThreas e imprimirRelatorios) e os testes relacionados com concorrência.
Só uma nota, alguns dos métodos de concorrência (como os do atendimento que o cliente usa) são bem fáceis de testar. Pensem em threads que façam alguns asserts e algumas chamadas a métodos numa ordem determinística e alguns notifies.
Os métodos da central são um pouco mais complicados de testar.
Também notem que tive que colocar o código que lança a excessão se já atingiu o limite e o que incrementa a contagem num bloco sincronizado para evitar que dois clientes façam a verificação e incrementem o contador "ao mesmo tempo".
Se alguém tiver mais refatorações (estou convencido que os nomes podem melhorar) ou testes, mandem os links.
Fórum