EscSeqReqTests.cs 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  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. namespace Terminal.Gui.CoreTests {
  8. public class EscSeqReqTests {
  9. [Fact]
  10. public void Constructor_Defaults ()
  11. {
  12. var escSeqReq = new EscSeqReqProc ();
  13. Assert.NotNull (escSeqReq.EscSeqReqStats);
  14. Assert.Empty (escSeqReq.EscSeqReqStats);
  15. }
  16. [Fact]
  17. public void Add_Tests ()
  18. {
  19. var escSeqReq = new EscSeqReqProc ();
  20. escSeqReq.Add ("t");
  21. Assert.Single (escSeqReq.EscSeqReqStats);
  22. Assert.Equal ("t", escSeqReq.EscSeqReqStats [^1].Terminating);
  23. Assert.Equal (1, escSeqReq.EscSeqReqStats [^1].NumRequests);
  24. Assert.Equal (1, escSeqReq.EscSeqReqStats [^1].NumOutstanding);
  25. escSeqReq.Add ("t", 2);
  26. Assert.Single (escSeqReq.EscSeqReqStats);
  27. Assert.Equal ("t", escSeqReq.EscSeqReqStats [^1].Terminating);
  28. Assert.Equal (1, escSeqReq.EscSeqReqStats [^1].NumRequests);
  29. Assert.Equal (1, escSeqReq.EscSeqReqStats [^1].NumOutstanding);
  30. escSeqReq = new EscSeqReqProc ();
  31. escSeqReq.Add ("t", 2);
  32. Assert.Single (escSeqReq.EscSeqReqStats);
  33. Assert.Equal ("t", escSeqReq.EscSeqReqStats [^1].Terminating);
  34. Assert.Equal (2, escSeqReq.EscSeqReqStats [^1].NumRequests);
  35. Assert.Equal (2, escSeqReq.EscSeqReqStats [^1].NumOutstanding);
  36. escSeqReq.Add ("t", 3);
  37. Assert.Single (escSeqReq.EscSeqReqStats);
  38. Assert.Equal ("t", escSeqReq.EscSeqReqStats [^1].Terminating);
  39. Assert.Equal (2, escSeqReq.EscSeqReqStats [^1].NumRequests);
  40. Assert.Equal (2, escSeqReq.EscSeqReqStats [^1].NumOutstanding);
  41. }
  42. [Fact]
  43. public void Remove_Tests ()
  44. {
  45. var escSeqReq = new EscSeqReqProc ();
  46. escSeqReq.Add ("t");
  47. escSeqReq.Remove ("t");
  48. Assert.Empty (escSeqReq.EscSeqReqStats);
  49. escSeqReq.Add ("t", 2);
  50. escSeqReq.Remove ("t");
  51. Assert.Single (escSeqReq.EscSeqReqStats);
  52. Assert.Equal ("t", escSeqReq.EscSeqReqStats [^1].Terminating);
  53. Assert.Equal (2, escSeqReq.EscSeqReqStats [^1].NumRequests);
  54. Assert.Equal (1, escSeqReq.EscSeqReqStats [^1].NumOutstanding);
  55. escSeqReq.Remove ("t");
  56. Assert.Empty (escSeqReq.EscSeqReqStats);
  57. }
  58. [Fact]
  59. public void Requested_Tests ()
  60. {
  61. var escSeqReq = new EscSeqReqProc ();
  62. Assert.False (escSeqReq.Requested ("t"));
  63. escSeqReq.Add ("t");
  64. Assert.False (escSeqReq.Requested ("r"));
  65. Assert.True (escSeqReq.Requested ("t"));
  66. }
  67. }
  68. }