Esempio n. 1
0
        public async Task <PaymentProcessEntity> ExecuteAsync(GetByIdQueryRequest request)
        {
            _logger.LogInformation($"Executing get process payment with id {request.Id}");

            object cached;

            var inCache = _memoryCache.TryGetFromCache(
                () => GetCacheKey(request.ToString()),
                out cached);

            if (!inCache)
            {
                _logger.LogInformation("Payment process not in cache, retrieving from origin");
                var origin = await _repository.GetByIdAsync(request.Id);

                if (origin == null)
                {
                    return(origin);
                }

                CreditCardMask.Mask(ref origin);
                _memoryCache.WriteInCache(
                    () => GetCacheKey(request.ToString()),
                    origin);

                return(origin);
            }
            else
            {
                _logger.LogInformation($"Payment process retrieved from cache");
                return((PaymentProcessEntity)cached);
            }
        }
Esempio n. 2
0
        public void RandomTests()
        {
            Func <string, string> solution = (cc) =>
            {
                return(cc.Length <= 4 ? cc : new String('#', cc.Length - 4) + cc.Substring(cc.Length - 4));
            };
            Random        rand        = new Random();
            Func <string> randomToken = () =>
            {
                return(rand.Next(1000, 9999).ToString());
            };

            for (int i = 0; i < 100; i++)
            {
                string t = randomToken() + randomToken() + randomToken() + randomToken();
                t = t.Substring(0, 1 + (rand.Next(1, 15) % t.Length));
                Assert.AreEqual(solution(t), CreditCardMask.Maskify(t));
            }
        }
 public void MaskifyTests(string input, string output)
 {
     Assert.Equal(output, CreditCardMask.Maskify(input));
 }
Esempio n. 4
0
 public void CreditCardMask_Maskify_ExampleTests()
 {
     Assert.AreEqual(CreditCardMask.Maskify("4556364607935616"), "############5616");
     Assert.AreEqual(CreditCardMask.Maskify("1"), "1");
     Assert.AreEqual(CreditCardMask.Maskify("11111"), "#1111");
 }
Esempio n. 5
0
 public void ExamplesTests()
 {
     Assert.AreEqual("############5616", CreditCardMask.Maskify("4556364607935616"));
     Assert.AreEqual("1", CreditCardMask.Maskify("1"));
     Assert.AreEqual("#1111", CreditCardMask.Maskify("11111"));
 }