Exemplo n.º 1
0
        public async Task CreateMailingAsync_CreatesMailingAndReturnsIt()
        {
            //arrange
            var worksId = new List <int>();

            worksId.Add(3);

            var model = new MailingsGeneratorDomain.Models.Mailing()
            {
                StartDate    = "10.01",
                WorksId      = worksId,
                FinishWorkId = 3,
                MailingId    = 14,
                CourseName   = "course1"
            };

            //act
            var m = await _service.CreateMailingAsync(model);

            // assert
            // Assert.AreEqual("lab 2", ce.Name);
            Assert.IsTrue(_mailingsDb.ContainsKey(m.MailingId));
            Assert.IsTrue(_mailingsDb[m.MailingId].MailText.Count >= _mailingsDb[m.MailingId].Works.Count);
            Assert.IsTrue(_mailingsDb[m.MailingId].Works.Count == worksId.Count);
            Assert.IsTrue(_mailingsDb.ContainsValue(m));
        }
Exemplo n.º 2
0
        public async Task CreateControlEventAsync_ThrowsExpected(MailingsGeneratorDomain.Models.Mailing mailing,
                                                                 Type type, string message)
        {
            //arrange
            //act
            var exception = Assert.ThrowsAsync(type, () => _service.CreateMailingAsync(mailing));

            // assert
            Assert.AreEqual(message, exception.Message);
            Assert.AreEqual(exception.GetType(), type);
        }
Exemplo n.º 3
0
        private Dictionary <int, MailingsGeneratorDomain.Models.Mailing> CreateMailingDataBase(Dictionary <int, Text> tDb,
                                                                                               Dictionary <int, ControlEvent> ceDb)
        {
            var a = new MailingsGeneratorDomain.Models.Mailing()
            {
                MailingId  = 1,
                StartDate  = "12.01",
                CourseName = "probability theory",
                HelloText  = "hello",
                Works      = new List <ControlEvent>(),
                MailText   = new List <Text>()
            };

            a.Works.Add(ceDb[3]);
            a.MailText.Add(tDb[3]);

            var d = new MailingsGeneratorDomain.Models.Mailing()
            {
                MailingId  = 4,
                StartDate  = "14.04",
                CourseName = "dot net",
                HelloText  = "hello",
                Works      = new List <ControlEvent>(),
                MailText   = new List <Text>(),
                FinishWork = ceDb[5]
            };

            d.Works.Add(ceDb[4]);
            d.MailText.Add(tDb[3]);

            var dataBase = new Dictionary <int, MailingsGeneratorDomain.Models.Mailing>()
            {
                [1] = a,
                [2] = new MailingsGeneratorDomain.Models.Mailing()
                {
                    MailingId  = 2,
                    StartDate  = "02.02",
                    CourseName = "big data",
                },
                [3] = new MailingsGeneratorDomain.Models.Mailing()
                {
                    MailingId  = 3,
                    StartDate  = "3.03",
                    CourseName = "data management"
                },
                [4] = d
            };

            return(dataBase);
        }
Exemplo n.º 4
0
        private MailingsGeneratorDomain.Models.Mailing CreateUpdated(MailingsGeneratorDomain.Models.Mailing mailing,
                                                                     UpdateMailingModel model)
        {
            if (model.CourseName != null)
            {
                mailing.CourseName = model.CourseName;
            }

            if (model.FinishId.HasValue)
            {
                mailing.FinishWork = model.FinishWork;
            }

            if (model.HelloText != null)
            {
                mailing.HelloText = model.HelloText;
            }

            if (model.StartDate != null)
            {
                mailing.StartDate = model.StartDate;
            }

            if (model.Works != null)
            {
                foreach (var work in model.Works)
                {
                    mailing.Works.Add(work);
                }
            }
            if (model.MailText != null)
            {
                foreach (var text in model.MailText)
                {
                    mailing.MailText.Add(text);
                }
            }
            return(mailing);
        }