Exemplo n.º 1
0
        public void Parse()
        {
            RUID gen = RUID.Generate();

            Console.WriteLine(gen.ToString());
            Assert.Equal(gen, RUID.Parse(gen.ToString()));

            Assert.Equal(gen.GetHashCode(), new RUID(gen.Bytes()).GetHashCode());

            var sorted = new List <RUID>();

            for (int i = 0; i < 30; i++)
            {
                sorted.Add(RUID.Generate());
            }

            sorted.Sort();

            List <RUID> shuffled = new List <RUID>(sorted);

            shuffled = shuffled.OrderBy(a => Guid.NewGuid()).ToList();
            shuffled.Sort();

            Assert.Equal(sorted, shuffled);
        }
Exemplo n.º 2
0
        public void Json()
        {
            RUID   original     = RUID.Generate();
            String json         = JsonConvert.SerializeObject(original);
            RUID   deserialized = JsonConvert.DeserializeObject <RUID>(json);

            Assert.Equal(original, deserialized);
        }
Exemplo n.º 3
0
        public bool AddRating(AddRating model)
        {
            var ratings = db.Ratings.Include(u => u.UIDs).Where(pid => pid.PostId == model.PostId).FirstOrDefault();

            if (ratings == null)
            {
                Rating l = new Rating();
                l.PostId = model.PostId;
                RUID uID = new RUID();
                uID.U_ID = model.UserId;
                l.UIDs.Add(uID);

                l.TotalRating   = model.RatingValue;
                l.AverageRating = model.RatingValue;
                return(base.Add(l));
            }

            foreach (var u in ratings.UIDs)
            {
                if (u.U_ID == model.UserId)
                {
                    return(false);
                }
            }

            RUID ID = new RUID();

            ID.U_ID = model.UserId;
            ratings.UIDs.Add(ID);
            ratings.TotalRating = ratings.TotalRating + model.RatingValue;
            double avg      = (double)ratings.TotalRating / ratings.UIDs.Count;
            double avgValue = Math.Round(avg, 1);

            ratings.AverageRating = avgValue;

            return(base.Update(ratings));
        }