Exemplo n.º 1
0
 public ShortLinksService(
     IShortLinksRepository repository,
     IRedisCacheServiceFactory redisCacheServiceFactory,
     ShortCodeGenerator generator)
 {
     _repository = repository;
     _redisCacheServiceFactory = redisCacheServiceFactory;
     _generator = generator;
 }
Exemplo n.º 2
0
        public static void TestCase()
        {
            var urlShortner = new ShortCodeGenerator();
            var req         = new ShortenRequest
            {
                MainUrl = "http://www.google.com"
            };
            var response = urlShortner.GetShortUrl(req);

            Console.WriteLine(Thread.CurrentThread.ManagedThreadId + " " + response.StatusMessage);
            Console.WriteLine(response.ShortUrl);
            Console.WriteLine(DateTime.Now);
        }
Exemplo n.º 3
0
        public void Setup()
        {
            _shortLinksRepositoryMock     = new Mock <IShortLinksRepository>();
            _redisCacheServiceFactoryMock = new Mock <IRedisCacheServiceFactory>();

            var cacheService = new Mock <IRedisCacheService>();

            _redisCacheServiceFactoryMock.Setup(fac => fac.Connect())
            .Returns(cacheService.Object);

            var generator = new ShortCodeGenerator();

            _service = new ShortLinksService(
                _shortLinksRepositoryMock.Object,
                _redisCacheServiceFactoryMock.Object,
                generator);
        }
Exemplo n.º 4
0
        protected async Task <string> GetCode(SourceUrlDto sourceUrl)
        {
            var code     = "";
            var existing = await DB.Urls.SingleOrDefaultAsync(x => x.SourceUrl == sourceUrl.Url);

            if (existing == null)
            {
                if (sourceUrl.Code == "")
                {
                    code = ShortCodeGenerator.Generate();
                }
                else
                {
                    code = sourceUrl.Code;
                }
            }
            else
            {
                code = existing.Code;
            }
            return(code);
        }
Exemplo n.º 5
0
 public void Setup()
 {
     _generator = new ShortCodeGenerator();
 }