Example #1
0
        public void SqlParams_Should_Match_For_SaveRecord()
        {
            var mockClient = new Mock <IModularDbClient>();
            var connStr    = new DbConnectionStringBuilder();
            var input      = new TModel(new { Id = 1 });
            var output     = new TModel(new { Id = 1 });

            mockClient.Setup(m => m.GetConnectionBuilder(It.IsAny <string>())).Returns(connStr);
            mockClient.Setup(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.IsAny <IRepositoryMethodDefinition>())).Returns(output);

            TRepo sut = new TRepo(mockClient.Object, "");

            var o = sut.SaveRecord(input);

            mockClient.Verify(m => m.GetConnectionBuilder(It.IsAny <string>()));

            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@id"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@groupfilter"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@groupkey"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@fieldkey"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@fieldtype"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@fielddata"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@fieldclass"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@parentkey"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@defaultlabel"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@wrapperclass"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@wrapperhtmlstart"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@wrapperhtmlend"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@order"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Any(param => param.ParameterName == "@auditchangeby"))));
            mockClient.Verify(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.Is <IRepositoryMethodDefinition>(def => def.Parameters.Count() == 14)));

            mockClient.VerifyNoOtherCalls();
        }
Example #2
0
        public void SqlParams_Should_Throw_NotImplementedException_For_InsertRecord()
        {
            var mockClient = new Mock <IModularDbClient>();
            var connStr    = new DbConnectionStringBuilder();
            var input      = new TModel(new { Id = 1 });
            var output     = new TModel(new { Id = 1 });

            mockClient.Setup(m => m.GetConnectionBuilder(It.IsAny <string>())).Returns(connStr);
            mockClient.Setup(m => m.GetRecordObject <TModel>(It.IsAny <object>(), It.IsAny <string>(), It.IsAny <IRepositoryMethodDefinition>())).Returns(output);

            TRepo sut = new TRepo(mockClient.Object, "");

            Assert.ThrowsException <NotImplementedException>(() => sut.InsertRecord(input));
        }