示例#1
0
        public static void Main(string[] args)
        {
            using (var redis = new RedisClient()) {
                // Performance to Test
                // Adding full list to redis
                // Get all indexes as a time table
                // want to see how time changes for different items in the list

                redis.FlushDb();
                var data = new MockedData(300000);

                var list = new RedisList(Guid.NewGuid().ToString(), redis, data);
                var set  = new RedisSortedSet(Guid.NewGuid().ToString(), redis, data);

                Console.WriteLine("List Testing");
                PerformanceTesting.TimeOperation("Insert all data into a list", list.AddAllRecords);
                PerformanceTesting.TimeOperation("Lookup all records sequentially - one by one", list.LookupRecordsSequentially);

                Console.WriteLine("++++++++++============================================++++++++++");

                Console.WriteLine("Sorted Set Testing");
                PerformanceTesting.TimeOperation("Insert all data into a sortedset", set.AddAllRecords);
                PerformanceTesting.TimeOperation("Lookup all records sequentially - one by one", set.LookupRecordsSequentially);
            }
        }
示例#2
0
        public static void Main(string[] args)
        {
            var builder = new ConfigurationBuilder()
                          .SetBasePath(Directory.GetCurrentDirectory())
                          .AddJsonFile("appsettings.json");
            var configuration   = builder.Build();
            var redisConnection = configuration["RedisConnection"];

            var redis = ConnectionMultiplexer.Connect(redisConnection);

            FlushAllDbs(redisConnection);

            var cache = redis.GetDatabase();
            var data  = new MockedData(500000);

            var list = new RedisList(Guid.NewGuid().ToString(), cache, data);

            // var set = new RedisSortedSet (Guid.NewGuid ().ToString (), cache, data);

            Console.WriteLine("List Testing");
            PerformanceTesting.TimeOperation("Insert all data into a list", list.AddAllRecords);
            PerformanceTesting.TimeOperation("Lookup all records sequentially - one by one", list.LookupRecord);

            Console.WriteLine("++++++++++============================================++++++++++");

            Console.WriteLine($"Removing list id: {list.Identifier}");
            cache.KeyDelete(list.Identifier);

            //     Console.WriteLine ("Sorted Set Testing");
            //     PerformanceTesting.TimeOperation ("Insert all data into a sorted set", set.AddAllRecords);
            //     PerformanceTesting.TimeOperation ("Lookup all records sequentially - one by one", set.LookupRecordsSequentially);
        }
        private void CustomerByNameCountryCityComparerButton_Click(object sender, EventArgs e)
        {
            var customers = MockedData.MockedCustomers()
                            .Distinct(new CustomerByNameCountryCityComparer())
                            .ToList();

            foreach (var customer in customers)
            {
                Console.WriteLine(customer);
            }
        }
        private async Task <List <AlbumViewModel> > SetupAlbumsService(int userId, string fileLocation)
        {
            // Arrange
            List <AlbumViewModel> albumViewModels     = MockedData.GetAlbumViewModels(fileLocation);
            HttpResponseMessage   httpResponseMessage = new HttpResponseMessage()
            {
                Content = new JsonContent(albumViewModels)
            };

            _mockHttpRequestFactory.Setup(x => x.Get(It.IsAny <string>())).Returns(Task.FromResult(httpResponseMessage));
            var unitUnderTest = CreateService();

            return(await unitUnderTest.GetUserAlbums(userId));
        }
示例#5
0
        private async Task <List <PhotoViewModel> > SetupPhotoViewModels(int userId, string albumsFileLocation, string photosFileLocation)
        {
            // Arrange
            List <AlbumViewModel> albumViewModels = MockedData.GetAlbumViewModels(albumsFileLocation);

            _mockAlbumService.Setup(x => x.GetUserAlbums(userId)).Returns(Task.FromResult(albumViewModels.Where(a => a.UserId == userId).ToList()));
            List <PhotoViewModel> photoViewModels     = MockedData.GetPhotoViewModels(photosFileLocation);
            HttpResponseMessage   httpResponseMessage = new HttpResponseMessage()
            {
                Content = new JsonContent(photoViewModels)
            };

            _mockHttpRequestFactory.Setup(x => x.Get(It.IsAny <string>())).Returns(Task.FromResult(httpResponseMessage));
            var unitUnderTest = CreateService();

            return(await unitUnderTest.GetUserSpecificAlbumPhotos(userId));
        }
        public void BetweenContacts_1()
        {
            /*
             * First contact for between
             */
            var firstContact = new ContactName()
            {
                FirstName = "Frédérique", LastName = "Citeaux"
            };

            /*
             * Last contact for between
             */
            var lastContact = new ContactName()
            {
                FirstName = "Elizabeth", LastName = "Brown"
            };

            var contactsArray = MockedData.ReadContacts().ToArray();
            var contacts      = contactsArray.ContactsListIndices();

            var(startIndex, endIndex) = contacts.BetweenContacts(firstContact, lastContact);

            var contactsBetweenTwo = contactsArray[startIndex..endIndex];
示例#7
0
        public async Task <MockedData> GetMockedDataAsync()
        {
            if (_mockedData != null)
            {
                return(_mockedData);
            }
            try
            {
                Console.WriteLine($"Reading {MOCKED_DATA_FILE}");
                using (var r = new StreamReader(MOCKED_DATA_FILE))
                {
                    var json = await r.ReadToEndAsync();

                    _mockedData = JsonConvert.DeserializeObject <MockedData>(json);
                }

                return(_mockedData);
            }
            catch (Exception e)
            {
                Console.WriteLine($"Exception reading {MOCKED_DATA_FILE}:{e.Message}.\nApplication exiting.");
                return(null);
            }
        }
示例#8
0
 public RedisList(string identifier, RedisClient redisClient, MockedData data) : base(identifier, redisClient, data)
 {
 }
示例#9
0
 public Redis(string identifier, RedisClient redisClient, MockedData data)
 {
     Identifier  = identifier;
     Records     = data.Records;
     RedisClient = redisClient;
 }