public async void SelfReferenceId2_Create_Valid_Reference()
        {
            Mock <ISelfReferenceRepository> selfReferenceRepository = new Mock <ISelfReferenceRepository>();

            selfReferenceRepository.Setup(x => x.SelfReferenceBySelfReferenceId2(It.IsAny <int>())).Returns(Task.FromResult <SelfReference>(new SelfReference()));

            var validator = new ApiSelfReferenceServerRequestModelValidator(selfReferenceRepository.Object);
            await validator.ValidateCreateAsync(new ApiSelfReferenceServerRequestModel());

            validator.ShouldNotHaveValidationErrorFor(x => x.SelfReferenceId2, 1);
        }
        public async void SelfReferenceId_Update_Invalid_Reference()
        {
            Mock <ISelfReferenceRepository> selfReferenceRepository = new Mock <ISelfReferenceRepository>();

            selfReferenceRepository.Setup(x => x.SelfReferenceBySelfReferenceId(It.IsAny <int>())).Returns(Task.FromResult <SelfReference>(null));

            var validator = new ApiSelfReferenceServerRequestModelValidator(selfReferenceRepository.Object);

            await validator.ValidateUpdateAsync(default(int), new ApiSelfReferenceServerRequestModel());

            validator.ShouldHaveValidationErrorFor(x => x.SelfReferenceId, 1);
        }