public void CreateParameter()
        {
            // Arrange
            int       ElementsCountBeforeAct = parametersDbSet.Count();
            Parameter parameter = new Parameter()
            {
                ParameterName        = "@added",
                ParameterRuName      = "added",
                ParameterCreatedDate = DateTime.Now
            };

            // Act
            repository.Create(parameter);

            // Assert
            Assert.AreNotEqual(ElementsCountBeforeAct, parametersDbSet.Count());
            Assert.IsTrue(parametersDbSet.Count() > ElementsCountBeforeAct);
            Assert.AreEqual("@added", parametersDbSet.Last().ParameterName);
        }
        public void Create_Success_ReturnEntity()
        {
            // Arrange
            var repository = new ParameterRepository();
            var input      = GenerateInput();

            // Act
            var result = repository.Create(input);

            // Assert
            Assert.That(CompareProperties(input, result));
        }
        public void Get_Success_ReturnEntity()
        {
            // Arrange
            var repository = new ParameterRepository();
            var input      = repository.Create(GenerateInput());

            // Act
            var result = repository.Get(input.Id);

            // Assert
            Assert.IsInstanceOf <Parameter>(result);
        }
        public void GetParameterByName_Success_ReturnEntity()
        {
            // Arrange
            var repository = new ParameterRepository();
            var input      = repository.Create(GenerateInput());

            // Act
            var result = repository.GetParameterByName(input.Key);

            // Assert
            Assert.That(result != null && result.Key == input.Key);
        }
        public void Delete_Success_ReturnNull()
        {
            // Arrange
            var repository = new ParameterRepository();
            var input      = repository.Create(GenerateInput());

            // Act
            repository.Delete(input.Id);
            var result = repository.Get(input.Id);

            // Assert
            Assert.IsNull(result);
        }
        public void Update_Success_ReturnTrue()
        {
            // Arrange
            var repository = new ParameterRepository();
            var input      = repository.Create(GenerateInput());

            var inputForUpdate = GenerateInput(id: input.Id);

            // Act
            var result = repository.Update(inputForUpdate);

            // Assert
            Assert.IsTrue(result);
        }