public async Task GetEthRate()
        {
            var getRateAction = new GetRateAction {
                FromCurrency = "ETH", ToCurrency = "USD"
            };

            _ = await Mediator.Send(getRateAction);

            RateState result = Store.GetState <RateState>();

            result.ShouldNotBe(null);
            Console.WriteLine("{ result.Rate}");
        }
        protected override async Task OnAfterRenderAsync(bool aFirstRender)
        {
            Conversion?conversion = RateState.GetConversion(CurrencyCode, ShortFiatCurrencyCode);

            if (conversion == null || conversion.TimeStamp.AddMinutes(5) < DateTime.UtcNow)
            {
                var getRateAction = new GetRateAction
                {
                    ToCurrency   = ShortFiatCurrencyCode,
                    FromCurrency = CurrencyCode
                };
                _ = await Mediator.Send(getRateAction);
            }
        }
        //public GetRateAction GetRateAction  { get; set; }

        public async Task GetAgldRate()
        {
            var getRateAction = new GetRateAction {
                FromCurrency = "AGLD", ToCurrency = "USD"
            };

            _ = await Mediator.Send(getRateAction);

            RateState result = Store.GetState <RateState>();

            result.ShouldNotBe(null);
            result.Conversions.Count.ShouldBeGreaterThan(0);
            RateState.Conversion conversion = result.GetConversion("AGLD", "USD");
            conversion.ShouldNotBeNull();
            // TODO add more asserts
        }