public void Update_A_Single_Entity()
        {
            //arrange
            var bodyParameter = new EqualsBinaryOperatorParameters
                                (
                new MemberSelectorOperatorParameters("FullName", new ParameterOperatorParameters(parameterName)),
                new ConstantOperatorParameters("Carson Alexander")
                                );

            //act
            DoTest <StudentModel, Student>
            (
                bodyParameter,
                null,
                null,
                parameterName,
                (StudentModel studentModel, ISchoolRepository repository) =>
            {
                studentModel.EnrollmentDate = new DateTime(2021, 2, 8);
                studentModel.EntityState    = LogicBuilder.Domain.EntityStateType.Modified;
                PersistenceOperations <StudentModel, Student> .Save(repository, studentModel);
            },
                returnValue =>
            {
                Assert.Equal(new DateTime(2021, 2, 8), returnValue.EnrollmentDate);
            },
                "$it => ($it.FullName == \"Carson Alexander\")"
            );
        }
Esempio n. 2
0
        public void Delete_A_Single_Entity_Using_Save()
        {
            //arrange
            var bodyParameter = new EqualsBinaryOperatorParameter
            (
                new MemberSelectorOperatorParameter("FullName", new ParameterOperatorParameter(parameterName)),
                new ConstantOperatorParameter("Carson Alexander")
            );

            //act
            DoTest<StudentModel, Student>
            (
                bodyParameter,
                null,
                null,
                parameterName,
                (StudentModel studentModel, ISchoolRepository repository) =>
                {
                    studentModel.EntityState = LogicBuilder.Domain.EntityStateType.Deleted;
                    PersistenceOperations<StudentModel, Student>.Save(repository, studentModel);
                },
                returnValue =>
                {
                    Assert.Null(returnValue);
                },
                "$it => ($it.FullName == \"Carson Alexander\")"
            );
        }
        public void Add_A_Single_Entity()
        {
            //arrange
            var bodyParameter = new EqualsBinaryOperatorParameters
                                (
                new MemberSelectorOperatorParameters("FullName", new ParameterOperatorParameters(parameterName)),
                new ConstantOperatorParameters("Roger Milla")
                                );

            //act
            DoTest <StudentModel, Student>
            (
                bodyParameter,
                null,
                new SelectExpandDefinitionParameters
            {
                ExpandedItems = new List <SelectExpandItemParameters>
                {
                    new SelectExpandItemParameters {
                        MemberName = "Enrollments"
                    }
                }
            },
                parameterName,
                (StudentModel studentModel, ISchoolRepository repository) =>
            {
                PersistenceOperations <StudentModel, Student> .Save
                (
                    repository,
                    new StudentModel
                {
                    EntityState    = LogicBuilder.Domain.EntityStateType.Added,
                    EnrollmentDate = new DateTime(2021, 2, 8),
                    Enrollments    = new List <EnrollmentModel>
                    {
                        new EnrollmentModel {
                            CourseID = 1050, Grade = Domain.Entities.Grade.A
                        },
                        new EnrollmentModel {
                            CourseID = 4022, Grade = Domain.Entities.Grade.A
                        },
                        new EnrollmentModel {
                            CourseID = 4041, Grade = Domain.Entities.Grade.A
                        }
                    },
                    FirstName = "Roger",
                    LastName  = "Milla"
                }
                );
            },
                returnValue =>
            {
                Assert.Equal(new DateTime(2021, 2, 8), returnValue.EnrollmentDate);
                Assert.Empty(returnValue.Enrollments);
            },
                "$it => ($it.FullName == \"Roger Milla\")"
            );
        }