Advertisement
Guest User

Untitled

a guest
Mar 30th, 2015
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using ATM_System.Event;
  7. using ATM_System.EventDetection;
  8. using ATM_System.Region;
  9. using ATM_System.Track;
  10.  
  11. namespace ATM_System
  12. {
  13. public class ATM
  14. {
  15. private List<ITrack> _tracks;
  16. private IRegion _region;
  17. private List<IEventDetection> _eventdetects;
  18. private List<IEvent> _events;
  19.  
  20. public ATM()
  21. {
  22. _tracks = new List<ITrack>();
  23. _region = new Region.Region(100000,100000); //could be changed by user
  24. _events = new List<IEvent>();
  25. _eventdetects = new List<IEventDetection>();
  26.  
  27.  
  28. }
  29.  
  30.  
  31.  
  32. public void Tick()
  33. {
  34.  
  35. // update track positions
  36. foreach (var track1 in _tracks)
  37. {
  38. track1.update();
  39. }
  40.  
  41. //check for events
  42. foreach (var detector in _eventdetects)
  43. {
  44. _events.AddRange(detector.DetectEvent(_tracks));
  45. }
  46.  
  47. //handle events and output
  48. foreach (var event1 in _events)
  49. {
  50. event1.HandleEvent();
  51. event1.LogEvent();
  52. }
  53.  
  54. }
  55.  
  56. public void IncomingTrack(ITrack track)
  57. {
  58. //add incoming track
  59. _tracks.Add(track);
  60. }
  61. }
  62. }
  63.  
  64. using System;
  65. using System.Collections.Generic;
  66. using System.Linq;
  67. using System.Text;
  68. using System.Threading.Tasks;
  69. using ATM_System.Event;
  70. using ATM_System.EventDetection;
  71. using ATM_System.Track;
  72. using NUnit.Framework;
  73. using NSubstitute;
  74.  
  75. namespace ATM_System.Tests.Unit
  76. {
  77. [TestFixture]
  78. class ATMUnitTests
  79. {
  80.  
  81. private ATM _uut;
  82. private ITrack _track;
  83. private IEvent _event;
  84. private IEventDetection _eventDetection;
  85.  
  86. [SetUp]
  87. public void Setup()
  88. {
  89. _track = Substitute.For<ITrack>();
  90. _event = Substitute.For<IEvent>();
  91. _eventDetection = Substitute.For<IEventDetection>();
  92.  
  93. _uut = new ATM();
  94. }
  95.  
  96. [Test]
  97. public void Tick_UpdateTracks_TracksUpdated()
  98. {
  99. _uut.Tick();
  100. _track.Received().update();
  101. }
  102.  
  103. }
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement