internal static SMS ToDTO(this SMSDb sMSDb) { return(new SMS { Id = sMSDb.Id, DestinationNumber = sMSDb.DestinationNumber, ExternalPrice = sMSDb.ExternalPrice, Line = sMSDb.Line.ToDTO(), LineId = sMSDb.LineId }); }
public void SendBulkSMSInMemoryTest() { var mockICurrentUserService = new Mock <ICurrentUserService>(); mockICurrentUserService.Setup(p => p.GetCurrentUser()).Returns("TestUser"); //http://techbrij.com/unit-testing-asp-net-mvc-controller-service var faker = new Bogus.Faker(); DbConnection memoryConnection = Effort.DbConnectionFactory.CreateTransient(); var memDB = new SMSDb(memoryConnection); // Mocking up dbFactory var mockdbFactory = new Mock <DbFactory <SMSDb> >(); mockdbFactory.Setup(m => m.DBContext).Returns(memDB); IUnitOfWork <SMSDb> UoW = new UnitOfWork <SMSDb>(mockdbFactory.Object, mockICurrentUserService.Object); // Set the template var template = new Template(); template.Id = 100; template.Description = "MyTemplate"; template.Name = "MyTemplate"; template.Text = Resources.mockTemplateString; memDB.Templates.Add(template); // Create SMS provider registration var provider = new Provider() { Name = "aurorafakeprovider", UserName = "******", PassWord = "******", Url = faker.Internet.Url() }; memDB.Providers.Add(provider); var target = new SMSServices(UoW); var smsMessages = target.ConstructSMSMessages(FixtureGenerator.CreateSMSRecepients(100), template.Id); var result = target.SendBulkSMS(smsMessages, provider.Name); Assert.IsNotNull(result); }