コード例 #1
0
        public void Test_CalculatePrice_ReturnsWithoutDiscount()
        {
            var priceRequest = new PriceRequest
            {
                UserType  = (long)UserTypeEnum.NormalUser,
                GoldPrice = 10,
                Weight    = 5
            };
            var priceResponse = new PriceCalculatorResponse
            {
                GoldPrice  = priceRequest.GoldPrice,
                Weight     = priceRequest.Weight,
                TotalPrice = priceRequest.GoldPrice * priceRequest.Weight,
                Discount   = null
            };

            PriceCalculatorService service = new PriceCalculatorService(repositoryMock.Object, factoryMock.Object);
            var arg = new AbstractPriceCreateArg
            {
                UserType = (UserTypeEnum)priceRequest.UserType,
                PriceCalculatorService = service
            };
            var product = new AbstractPriceCreateResponse
            {
                Product = new NormalPriceProduct(service)
            };

            factoryMock.Setup(p => p.Create(arg)).Returns(product);
            var result = product.Product.CalculatePrice(priceRequest);

            Assert.NotNull(result);
            Assert.Null(result.Discount);
            Assert.True(result.TotalPrice == priceResponse.TotalPrice);
        }
コード例 #2
0
ファイル: GraphFabric.cs プロジェクト: zoorinz/CES_TL
        public static Graph <City, string> CreateGraphPrice(IList <City> vertices, IList <Edge> edges, string costDescription, Parcel parcel)
        {
            edges = PriceCalculatorService.EdgePriceCalculator(parcel, edges.ToList());

            Graph <City, string> graph = new Graph <City, string>();

            AddVertices(graph, vertices);

            foreach (var edge in edges)
            {
                graph.Connect((uint)edge.SourceCity.ID + 1, (uint)edge.DestinationCity.ID + 1, (int)edge.Price, costDescription);

                System.Diagnostics.Debug.WriteLine(edge.SourceCity.ID + " -> " + edge.DestinationCity.ID + " : " + edge.Price);
            }
            return(graph);
        }
コード例 #3
0
 public ApplicationPriceCalculatorService(PriceCalculatorService PriceCalculatorService)
 {
     _priceCalculatorService = PriceCalculatorService;
 }
コード例 #4
0
 public PriceCalculatorServiceTest()
 {
     _priceCalculatorService = new PriceCalculatorService();
 }