예제 #1
0
        public async Task GeoBackgroundTask_WithResults_NoGps()
        {
            _appSettings.Verbose = true;
            var storage = new FakeIStorage(new List <string> {
                "/"
            },
                                           new List <string> {
            },
                                           new List <byte[]> {
            }
                                           );
            var storageSelector = new FakeSelectorStorage(storage);

            var geoReverseLookup = new FakeIGeoReverseLookup(new List <FileIndexItem>
            {
                new FileIndexItem("/test.jpg")
                {
                    FileHash = "2QOYZWMPACZAJ2MABGMOZ6CCPY"
                }
            });

            var controller = new GeoBackgroundTask(_appSettings, storageSelector,
                                                   _geoLocationWrite, _memoryCache, new FakeIWebLogger(),
                                                   geoReverseLookup);

            var results = await controller.GeoBackgroundTaskAsync();

            Assert.AreEqual(1, results.Count);
        }
예제 #2
0
        public void GeoBackgroundTask_IsNotCalled()
        {
            var storage          = new FakeIStorage();    // <= main folder not found
            var storageSelector  = new FakeSelectorStorage(storage);
            var geoReverseLookup = new FakeIGeoReverseLookup();

            var controller = new GeoBackgroundTask(_appSettings, storageSelector,
                                                   _geoLocationWrite, _memoryCache,
                                                   new FakeIWebLogger(),
                                                   geoReverseLookup);

            controller.GeoBackgroundTaskAsync();

            Assert.AreEqual(0, geoReverseLookup.Count);
        }
예제 #3
0
        public async Task GeoBackgroundTask_WithResults_AlreadyHasGps()
        {
            var storage = new FakeIStorage(new List <string> {
                "/"
            },
                                           new List <string> {
                "/2QOYZWMPACZAJ2MABGMOZ6CCPY.jpg"
            },
                                           new List <byte[]> {
                CreateAnImage.Bytes
            }
                                           );
            var storageSelector  = new FakeSelectorStorage(storage);
            var geoReverseLookup = new GeoReverseLookup(_appSettings, _geoFileDownload, _memoryCache);

            var controller = new GeoBackgroundTask(_appSettings, storageSelector,
                                                   _geoLocationWrite, _memoryCache, new FakeIWebLogger(),
                                                   geoReverseLookup);

            // var is used
            var results = await controller.GeoBackgroundTaskAsync();

            Assert.AreEqual(0, results.Count);
        }