Пример #1
0
        private void CreatePostRequestModelMainPart(string quote, string market, EBuySell recommend, string price, EAccessMode access, string content, string forecast, string file)
        {
            if (string.IsNullOrWhiteSpace(file) && string.IsNullOrWhiteSpace(content))
            {
                throw new ArgumentNullException(nameof(file) + " or " + nameof(content));
            }

            if (recommend == EBuySell.None || access == EAccessMode.None || string.IsNullOrWhiteSpace(price) ||
                string.IsNullOrWhiteSpace(forecast) || string.IsNullOrWhiteSpace(quote))
            {
                throw new ArgumentNullException(nameof(recommend) + " or " + nameof(access) + " or " + nameof(price) + " or " + nameof(forecast) + " or " + nameof(quote));
            }

            Quote     = quote?.Replace("/", string.Empty);
            Recommend = recommend == EBuySell.None ? string.Empty : recommend.ToString();
            Price     = price;
            Forecast  = forecast;
        }
        public void PerformQueryTest(string quote, string market, EBuySell recommend, string price,
                                     EAccessMode access, string content, string forecast, string file)
        {
            CreatePostRequestModel model = new CreatePostRequestModel(quote, market, recommend, price, access, content, forecast, file);
            var actual = model.PerformQuery();

            foreach (var item in typeof(CreatePostRequestModel).GetRuntimeMethods())
            {
                var res = item.GetParameters();
                if (item.Name.Equals("GetStringForecastTime") && item.GetParameters().First().ParameterType == typeof(string))
                {
                    forecast = item.Invoke(model, new object[] { forecast }) as string;
                    break;
                }
            }

            var expected = new JObject
            {
                ["quote"]     = quote,
                ["market"]    = market,
                ["recommend"] = recommend == EBuySell.None ? string.Empty : recommend.ToString(),
                ["access"]    = access == EAccessMode.None ? string.Empty : access.ToString(),
                ["forecast"]  = forecast
            };

            if (!string.IsNullOrWhiteSpace(price))
            {
                expected["price"] = price;
            }
            if (!string.IsNullOrWhiteSpace(file))
            {
                expected["image"] = "data:image/gif;base64," + file;
            }
            if (!string.IsNullOrWhiteSpace(content))
            {
                expected["content"] = content;
            }

            Assert.IsTrue(JToken.DeepEquals(actual, expected));
        }
Пример #3
0
        public static string GetLocaleStringFromEnum(this EBuySell recommend)
        {
            var result = Locale.Localization.Lang.GetType().GetRuntimeProperty(recommend.ToString()).GetValue(Locale.Localization.Lang) as string;

            return(result);
        }