Continous Integration in der Praxis Gruppenarbeit
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.6 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Xunit;
  7. using MiniGames.Shared.Models;
  8. using MiniGames.Client.ViewModel;
  9. namespace MiniGamesTests
  10. {
  11. public class TicTacToeTest
  12. {
  13. int[,] StandardBrett()
  14. {
  15. return new int[,]
  16. {
  17. { -1, -1, -1, },
  18. { -1, -1, -1, },
  19. { -1, -1, -1, },
  20. };
  21. }
  22. SpielerModel[] StandardSpieler()
  23. {
  24. return new SpielerModel[]
  25. {
  26. new SpielerModel
  27. {
  28. SpielerName = "Spieler 1",
  29. Punkte = 0
  30. },
  31. new SpielerModel
  32. {
  33. SpielerName = "Spieler 2",
  34. Punkte = 1
  35. }
  36. };
  37. }
  38. TicTacToeModel StandardModel()
  39. {
  40. return new TicTacToeModel
  41. {
  42. Spieler = StandardSpieler(),
  43. Brett = StandardBrett(),
  44. };
  45. }
  46. [Theory]
  47. [InlineData(0, 4, true)]
  48. private void SpielerInput_FreiesFeldBelegenTest(int spielerIndex, int posIndex, bool gesetzt)
  49. {
  50. // arrange
  51. TicTacToe spiel = new(StandardModel());
  52. int[,] brett = spiel.Brett;
  53. bool erwartetGesetzt = gesetzt;
  54. // act
  55. bool erhaltenGesetzt = spiel.SpielerInput(spielerIndex, posIndex);
  56. // assert
  57. Assert.Equal(erwartetGesetzt, erhaltenGesetzt);
  58. }
  59. }
  60. }