Esempio n. 1
0
        public async Task ReadItem()
        {
            var store = new ConcurrentJsonStore <Person>(_options, _semaphoreFactory);

            var person = await store.ReadAsync();

            Assert.Equal(Constants.GetPerson(), person);
        }
Esempio n. 2
0
        public ConcurrentJsonStoresNoFile()
        {
            var options = new JsonStoreOptions
            {
                NamingStrategy = new StaticNamingStrategy(Guid.NewGuid().ToString())
            };

            _store = new ConcurrentJsonStore <Person>(options, new LocalSemaphoreFactory());
        }
Esempio n. 3
0
        public void ReadAndSave()
        {
            var store   = new ConcurrentJsonStore <Person>(_options, _semaphoreFactory);
            var person2 = Constants.GetPerson2();

            // use a task to change the item and other to read it
            Task.WaitAll(
                Task.Run(async() => await store.SaveAsync(person2)),
                Task.Run(async() => await store.ReadAsync())
                );
        }
Esempio n. 4
0
        public async Task ChangeItem()
        {
            var store1    = new ConcurrentJsonStore <Person>(_options, _semaphoreFactory);
            var newPerson = Constants.GetPerson2();
            await store1.SaveAsync(newPerson);

            // use another store to read
            var store2 = new ConcurrentJsonStore <Person>(_options, _semaphoreFactory);
            var person = await store2.ReadAsync();

            Assert.Equal(Constants.GetPerson2(), person);
        }