public async Task Delete_WithRandomId()
        {
            var repository = new ParamRepository(SessionFactory);
            await repository.Delete(Guid.NewGuid()).ConfigureAwait(false);

            // should not throw exception
        }
        public async Task GetById_WithRandomId()
        {
            var repository = new ParamRepository(SessionFactory);
            var retrieved  = await repository.GetById(Guid.NewGuid()).ConfigureAwait(false);

            Assert.Null(retrieved);
        }
        public async Task Save_SetsIdOnModel()
        {
            var repository = new ParamRepository(SessionFactory);
            var param      = MakeParam();
            await repository.Save(param).ConfigureAwait(false);

            Assert.AreNotEqual(Guid.Empty, param.Id);
        }
        public async Task GetByKey()
        {
            var   repository = new ParamRepository(SessionFactory);
            Param param      = MakeParam();
            await repository.Save(param).ConfigureAwait(false);

            var retrieved = await repository.GetByKey(param.Key).ConfigureAwait(false);

            Assert.AreEqual(param.Value, retrieved.Value);
        }
        public async Task DuplicateKey_ThrowsValidationException()
        {
            var repository = new ParamRepository(SessionFactory);
            var param11    = MakeParam();
            var param22    = MakeParam();

            param22.Key = param11.Key;
            await repository.Save(param11).ConfigureAwait(false);

            var ex = Assert.ThrowsAsync <ValidationException>(() => repository.Save(param22));

            Assert.AreEqual("The Key field must be unique", ex.Message);
        }
        public async Task GetAll_NoParameters()
        {
            var repository = new ParamRepository(SessionFactory);
            var parameters = await repository.GetAll().ConfigureAwait(false);

            foreach (var p in parameters)
            {
                await repository.Delete(p.Id).ConfigureAwait(false);
            }
            parameters = await repository.GetAll().ConfigureAwait(false);

            Assert.AreEqual(0, parameters.Count());
        }
        public async Task Delete()
        {
            var repository = new ParamRepository(SessionFactory);
            var param      = MakeParam();
            await repository.Save(param).ConfigureAwait(false);

            var paramId = param.Id;
            await repository.Delete(paramId).ConfigureAwait(false);

            var retrieved = await repository.GetById(paramId).ConfigureAwait(false);

            Assert.Null(retrieved);
        }
        public async Task UpdateParamValue()
        {
            var repository = new ParamRepository(SessionFactory);
            var param      = MakeParam();
            await repository.Save(param).ConfigureAwait(false);

            string modifiedValue = param.Value + "-modified";

            param.Value = modifiedValue;
            await repository.Save(param).ConfigureAwait(false);

            var retrieved = await repository.GetByKey(param.Key).ConfigureAwait(false);

            Assert.AreEqual(modifiedValue, retrieved.Value);
        }
        public async Task UpdateDescription()
        {
            var repository = new ParamRepository(SessionFactory);
            var param      = MakeParam();
            await repository.Save(param).ConfigureAwait(false);

            var modifiedDescription = param.Description + " (modified)";

            param.Description = modifiedDescription;
            await repository.Save(param).ConfigureAwait(false);

            var retrieved = await repository.GetByKey(param.Key).ConfigureAwait(false);

            Assert.NotNull(param.Description);
            Assert.AreEqual(modifiedDescription, retrieved.Description);
        }
Exemplo n.º 10
0
        public async Task GetAll()
        {
            var repository = new ParamRepository(SessionFactory);
            var param      = MakeParam();
            await repository.Save(param).ConfigureAwait(false);

            var paramId    = param.Id;
            var parameters = await repository.GetAll().ConfigureAwait(false);

            Assert.AreEqual(1, parameters.Count(p => p.Id == paramId));
            foreach (var p in parameters)
            {
                await repository.Delete(p.Id).ConfigureAwait(false);
            }
            parameters = await repository.GetAll().ConfigureAwait(false);

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