public void TestUserCRUD()
        {
            IUser user = CreateUser();

            UserProcessor up   = new UserProcessor(user);
            var           save = up.Create().Result;

            Assert.IsTrue(save != null && save.Data != null && save.Data.Id != Guid.Empty, "User save failed.");

            var one = up.FetchById().Result;

            one.Data.Password = "******";
            Assert.IsTrue(one != null && JsonConvert.SerializeObject(one, Formatting.None).Equals(JsonConvert.SerializeObject(save, Formatting.None)), "User fetch failed.");

            var loggedIn = up.Login().Result;

            Assert.IsTrue(loggedIn != null && loggedIn.Data != Guid.Empty, "User login failed.");

            var delete = up.Delete().Result;

            one = up.FetchById().Result;
            Assert.IsTrue(one.Data == null, "User delete failed.");

            var tp     = new TokenProcessor(loggedIn.Data);
            int result = tp.Delete().Result;
            var t      = tp.FetchById().Result;

            Assert.IsTrue(t.Data == null, "Token delete failed.");
        }
 public override void OnAuthorization(HttpActionContext actionContext)
 {
     if (actionContext.Request.Headers.Contains("TokenId"))
     {
         var  h   = actionContext.Request.Headers.GetValues("TokenId").FirstOrDefault();
         Guid val = Guid.Parse(h);
         var  tp  = new TokenProcessor(val);
         var  t   = tp.FetchById().Result;
         if (!t.Success || t.Data == null || !t.Data.Id.Equals(val))
         {
             actionContext.Response = new HttpResponseMessage(HttpStatusCode.Unauthorized);
         }
     }
     else
     {
         actionContext.Response = new HttpResponseMessage(HttpStatusCode.Unauthorized);
     }
 }
        public void TestVendorCRUD()
        {
            IVendor vendor = CreateVendor(VendorType.Photographer);

            var vp   = new VendorProcessor(vendor);
            var save = vp.Create().Result;

            Assert.IsTrue(save.Data != null && save.Data.Id != Guid.Empty, "Vendor save failed.");

            var one = vp.FetchById().Result;

            one.Data.Password = "******";
            Assert.IsTrue(one.Data != null && JsonConvert.SerializeObject(one.Data, Formatting.None).Equals(JsonConvert.SerializeObject(save.Data, Formatting.None)), "Vendor fetch failed.");

            var uHelper = new UserProcessor(save.Data.Id);
            var uOne    = uHelper.FetchById().Result;

            Assert.IsTrue(uOne.Data != null, "User not populated from vendor save.");

            var loggedIn = vp.Login().Result;

            Assert.IsTrue(loggedIn != null && loggedIn.Data != Guid.Empty, "Vendor login failed.");

            var delete = vp.Delete().Result;

            one = vp.FetchById().Result;
            Assert.IsTrue(one.Data == null, "Vendor delete failed.");

            uOne = uHelper.FetchById().Result;
            Assert.IsTrue(uOne.Data == null, "User not deleted from vendor delete.");

            var tp     = new TokenProcessor(loggedIn.Data);
            int result = tp.Delete().Result;
            var t      = tp.FetchById().Result;

            Assert.IsTrue(t.Data == null, "Token delete failed.");
        }