示例#1
0
        private Label Classify(RiskFlag flag)
        {
            switch (flag)
            {
            case RiskFlag.Black:
            case RiskFlag.Red:
                return(Label.Fraud);

            case RiskFlag.Yellow:
                return(Label.Suspicious);

            default:
                return(Label.Safe);
            }
        }
示例#2
0
        public void Ex5_Analyze_ReceivedAFlagRisk_ReturnsLabel(Label expected, RiskFlag flag)
        {
            //Assemble
            var riskFraudClientService = Substitute.For <IRiskFraudClientService>();

            var sut = new RiskFraudAnalyzer(riskFraudClientService);

            var fixture = new Fixture();

            var order = fixture.Create <Order>();

            var riskResponse = fixture.Create <RiskResponse>();

            riskResponse.Flag = flag;

            riskFraudClientService.CheckRisk(Arg.Any <OrderInfoRequest>()).Returns(riskResponse);

            //Act
            var result = sut.Analyze(order);

            //Assert
            Xunit.Assert.Equal(expected, result);
        }