Ejemplo n.º 1
0
        public void GetAdPicturesFromModel_2Pictures_FetchThemFromRepoAndSetFirstAsMainImage()
        {
            // Given
            BaseAd ad     = new Ad();
            String images = "b9da8b1e-aa77-401b-84e0-a1290130b7b7;b9da8b1e-aa77-401b-84e0-a1290130b999;";

            AdImage img1 = new AdImage()
            {
                Id = Guid.Parse("b9da8b1e-aa77-401b-84e0-a1290130b7b7")
            };
            AdImage img2 = new AdImage()
            {
                Id = Guid.Parse("b9da8b1e-aa77-401b-84e0-a1290130b999")
            };

            var repoMock = new Moq.Mock <IRepository>();

            repoMock.Setup(x => x.Get <AdImage>(Guid.Parse("b9da8b1e-aa77-401b-84e0-a1290130b7b7"))).Returns(img1);
            repoMock.Setup(x => x.Get <AdImage>(Guid.Parse("b9da8b1e-aa77-401b-84e0-a1290130b999"))).Returns(img2);

            AdServices service = new AdServices(null, repoMock.Object, null);

            // When
            BaseAd result = service.GetAdPicturesFromModel(ad, images);

            // Then
            Assert.AreEqual(ad, result);
            Assert.AreEqual(2, ad.Images.Count);
            Assert.AreEqual("b9da8b1e-aa77-401b-84e0-a1290130b7b7", ad.Images[0].Id.ToString());
            Assert.AreEqual(ad, ad.Images[0].BaseAd);
            Assert.IsTrue(ad.Images[0].IsPrimary);
            Assert.AreEqual("b9da8b1e-aa77-401b-84e0-a1290130b999", ad.Images[1].Id.ToString());
            Assert.AreEqual(ad, ad.Images[1].BaseAd);
            Assert.IsFalse(ad.Images[1].IsPrimary);
        }
Ejemplo n.º 2
0
        byte[] ConvertUIImageToByteArray(AdImage img)
        {
            if (img == null)
            {
                return(new byte[0]);
            }

            var image = Zebble.Device.Network.Download(img.Url).Result;

            if (image != null)
            {
                return(image);
            }

            return(new byte[0]);
        }
Ejemplo n.º 3
0
        public AdImage StoreImage(Guid id, Boolean isPrimary)
        {
            AdImage image = null;

            using (TransactionScope scope = new TransactionScope())
            {
                image              = new AdImage();
                image.Id           = id;
                image.IsPrimary    = isPrimary;
                image.UploadedDate = _helper.GetCurrentDateTime();

                _repository.Save <AdImage>(image);

                scope.Complete();
            }

            return(image);
        }
Ejemplo n.º 4
0
        public BaseAd GetAdPicturesFromModel(BaseAd ad, String imageIds)
        {
            if (String.IsNullOrEmpty(imageIds))
            {
                return(ad);
            }

            bool first = true;

            foreach (String imageId in imageIds.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries))
            {
                AdImage image = _repository.Get <AdImage>(Guid.Parse(imageId));
                if (first)
                {
                    image.IsPrimary = true;
                    first           = false;
                }
                ad.AddImage(image);
            }
            return(ad);
        }
Ejemplo n.º 5
0
        public void StoreImage_SavesImageInDbAndReturnCreatedIdentifier()
        {
            // Given
            DateTime d = new DateTime(2012, 01, 17);

            Guid guidId   = new Guid("14a5e994-fd5d-4a32-859d-a152013ad860");
            var  repoMock = new Moq.Mock <IRepository>();

            repoMock.Setup(x => x.Save <AdImage>(Moq.It.IsAny <AdImage>()));

            var helperMock = new Moq.Mock <IHelperService>();

            helperMock.Setup(x => x.GetCurrentDateTime()).Returns(d);

            AdImageServices service = new AdImageServices(repoMock.Object, helperMock.Object);

            // Then
            AdImage actual = service.StoreImage(guidId, true);

            Assert.AreEqual(guidId, actual.Id);
            Assert.IsTrue(actual.IsPrimary);
            Assert.AreEqual(d, actual.UploadedDate);
        }
Ejemplo n.º 6
0
 public virtual void AddImage(AdImage adImage)
 {
     Images.Add(adImage);
     adImage.BaseAd = this;
 }
Ejemplo n.º 7
0
 public virtual void AddImage(AdImage adImage)
 {
     Images.Add(adImage);
     adImage.BaseAd = this;
 }
Ejemplo n.º 8
0
        public void InsertInMemoryData()
        {
            //-------------------------------------------
            //         LOCATION REFERENCE TABLES
            //-------------------------------------------
            using (ITransaction transaction = _sessionFactory.GetCurrentSession().BeginTransaction())
            {
                //-------------------------------------------
                //         USER TABLE
                //-------------------------------------------

                //Create User 1
                User user = new User();
                user.Email     = "*****@*****.**";
                user.Password  = "******";
                user.Firstname = "Bruno";
                user.Lastname  = "Secret";
                _sessionFactory.GetCurrentSession().Save(user);

                //Create User 2
                User user2 = new User();
                user2.Email     = "*****@*****.**";
                user2.Password  = "******";
                user2.Firstname = "Nicolas";
                user2.Lastname  = "Secret";
                _sessionFactory.GetCurrentSession().Save(user2);

                //-------------------------------------------
                //         IMAGES
                //-------------------------------------------
                AdImage img1 = new AdImage();
                img1.Id           = Guid.Parse("acd04523-f2fc-47b5-a7af-50b33c49694f");
                img1.IsPrimary    = true;
                img1.UploadedDate = new DateTime();
                log.Info(_sessionFactory.GetCurrentSession().Save(img1));

                AdImage img2 = new AdImage();
                img2.Id           = Guid.Parse("262dcc07-8c90-4af8-b99c-12e48afac89f");
                img2.IsPrimary    = true;
                img2.UploadedDate = new DateTime();
                log.Info(_sessionFactory.GetCurrentSession().Save(img2));

                //-------------------------------------------
                //         AD TABLE
                //-------------------------------------------

                var normalCategories = _sessionFactory.GetCurrentSession().Query <Category>()
                                       .Where(x => x.Type == AdTypeEnum.Ad)
                                       .ToList();

                int nbCategories = normalCategories.Count;
                int nbCities     = _repository.CountAll <City>();

                for (int i = 1; i < 31; i++)
                {
                    BaseAd ad = null;

                    ad = new Ad();
                    normalCategories[Faker.RandomNumber.Next(0, nbCategories - 1)].AddAd(ad);

                    Faker.Lorem.Words(3).ForEach(s => ad.Title += " " + s);
                    ad.Body    = Faker.Lorem.Paragraph();
                    ad.IsOffer = true;

                    ad.CreationDate = DateTime.Now
                                      .AddDays(Faker.RandomNumber.Next(-7, 0))
                                      .AddHours(Faker.RandomNumber.Next(1, 23))
                                      .AddMinutes(Faker.RandomNumber.Next(1, 59))
                                      .AddSeconds(Faker.RandomNumber.Next(1, 59));
                    ad.Price       = Faker.RandomNumber.Next(1, 300000);
                    ad.PhoneNumber = String.Format("{0}.{1}.{2}", Faker.RandomNumber.Next(20, 99), Faker.RandomNumber.Next(20, 99), Faker.RandomNumber.Next(20, 99));
                    if (i == 1)
                    {
                        ad.AddImage(img1);
                    }
                    if (i == 2)
                    {
                        ad.AddImage(img2);
                    }
                    ad.CreatedBy = user;

                    ad.IsActivated     = false;
                    ad.ActivationToken = "activateme";

                    _repository.Get <City>(Faker.RandomNumber.Next(1, nbCities)).AddAd(ad);

                    _sessionFactory.GetCurrentSession().Save(ad);
                }

                _sessionFactory.GetCurrentSession().Update(img1);
                _sessionFactory.GetCurrentSession().Update(img2);


                //-------------------------------------------
                //         REFERENCE TABLES
                //-------------------------------------------


                transaction.Commit();
            }
        }