Ejemplo n.º 1
0
        public void Init()
        {
            _distanceEngine = new DistanceManager(new Dictionary<string, Location>());
            // Test Input: AB5, BC4, CD8, DC8, DE6, AD5, CE2, EB3, AE7

            _distanceEngine.AddPath("AB5");
            _distanceEngine.AddPath("BC4");
            _distanceEngine.AddPath("CD8");
            _distanceEngine.AddPath("DC8");
            _distanceEngine.AddPath("DE6");
            _distanceEngine.AddPath("AD5");
            _distanceEngine.AddPath("CE2");
            _distanceEngine.AddPath("EB3");
            _distanceEngine.AddPath("AE7");
        }
        public void AddPath_WithRightFormatOfPattern_ShouldAddInLocations(string route)
        {
            // Arrange
            _distanceEngine = new DistanceManager(_locations.Object);

            // Act
            _distanceEngine.AddPath(route);

            // Assert
            _locations.Verify(dic => dic.Add(It.IsAny<KeyValuePair<string, Location>>()), Times.Once);
        }
        public void AddPath_WhenExistSameLocation_ShouldNotAddInLocations(string route)
        {
            // Arrange
            _distanceEngine = new DistanceManager(_locations.Object);

            const string locationName = "A";
            _locations.Setup(dic => dic.ContainsKey(locationName)).Returns(true);

            // Act
            _distanceEngine.AddPath(locationName);

            // Assert
            _locations.Verify(dic => dic.Add(It.IsAny<KeyValuePair<string, Location>>()), Times.Never());
        }