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.

74 lines
1.8 KiB

  1. using MiniGames.Shared.Models;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using Xunit;
  8. namespace MiniGamesTests
  9. {
  10. public class TicTacToeBrettTest
  11. {
  12. public TicTacToeBrett TestBrett(
  13. int a = -1, int b = -1, int c = -1,
  14. int d = -1, int e = -1, int f = -1,
  15. int g = -1, int h = -1, int i = -1
  16. )
  17. {
  18. return new(
  19. new int[,]
  20. {
  21. { a, b, c, },
  22. { d, e, f, },
  23. { g, h, i, },
  24. }
  25. );
  26. }
  27. [Theory]
  28. [InlineData(4, 0, true)]
  29. public void Set_FreiesFeldBelegenTest(int pos, int wert, bool gesetzt)
  30. {
  31. // arrange
  32. TicTacToeBrett brett = new();
  33. bool erwartetGesetzt = gesetzt;
  34. // act
  35. bool erhaltenGesetzt = brett.set(pos, wert);
  36. // assert
  37. Assert.Equal(erwartetGesetzt, erhaltenGesetzt);
  38. }
  39. [Fact]
  40. public void Gleich_LeereBretterGleichTest()
  41. {
  42. // arrange
  43. TicTacToeBrett b1 = new();
  44. TicTacToeBrett b2 = new();
  45. bool erwartetGleich = true;
  46. // act
  47. bool erhaltenGleich = b1.Gleich(b2);
  48. // assert
  49. Assert.Equal(erwartetGleich, erhaltenGleich);
  50. }
  51. [Fact]
  52. public void Gleich_NichtLeereBretterUngleichTest()
  53. {
  54. // arrange
  55. TicTacToeBrett b1 = TestBrett(1);
  56. TicTacToeBrett b2 = TestBrett(2);
  57. bool erwartetGleich = false;
  58. // act
  59. bool erhaltenGleich = b1.Gleich(b2);
  60. // assert
  61. Assert.Equal(erwartetGleich, erhaltenGleich);
  62. }
  63. }
  64. }