public HttpResponseMessage Login(Login item)
        {
            item = facade.GetLoginRepo().Add(item);
            var response = Request.CreateResponse<Login>(HttpStatusCode.Created, item);

            string uri = Url.Link("DefaultApi", new { username = item.Username});
            response.Headers.Location = new Uri(uri);
            return response;
        }
 public Login Add(Login item)
 {
     if (item == null)
         throw new ArgumentNullException("Login cant be null");
     using (Context mCon = new Context())
     {
         item.Customer = mCon.Customers.FirstOrDefault(x => x.Id == item.Customer.Id);
         item = mCon.Login.Add(item);
         mCon.SaveChanges();
     }
     return item;
 }
 public bool Update(Login item)
 {
     if (item == null)
         throw new ArgumentNullException("Login is null");
     if (Get(item.Username) == null)
         return false;
     using (Context mCon = new Context())
     {
         Login temp = mCon.Login.FirstOrDefault(x => x.Username == item.Username);
         temp.Password = item.Password;
         temp.Customer = item.Customer;
         mCon.SaveChanges();
     }
     return true;
 }
        public void Login_add_creates_on_call_using_get_test()
        {
            Facade facace = new Facade();
            Customer cusOne = new Customer()
            {
                FirstName = "Jonas Olesen",
                Address = "Møbelvej 3",
                BirthDate = DateTime.Now.AddYears(-20),
                Email = "*****@*****.**",
                PhoneNumber = 22755692
            };
            cusOne = facace.GetCustomerRepo().Add(cusOne);
            Login login = new Login() { Customer = cusOne, Password = "******", Username = "******" + Id++ };
            login = facace.GetLoginRepo().Add(login);

            facace = new Facade();
            Assert.AreEqual(facace.GetLoginRepo().Get(login.Username).Password, login.Password);
        }
        public void Login_getall_returns_multiple_test()
        {
            Facade facade = new Facade();
            Customer cusOne = new Customer()
            {
                FirstName = "Jonas Olesen",
                Address = "Møbelvej 3",
                BirthDate = DateTime.Now.AddYears(-20),
                Email = "*****@*****.**",
                PhoneNumber = 22755692
            };
            cusOne = facade.GetCustomerRepo().Add(cusOne);

            Login login = new Login() { Customer = cusOne, Password = "******", Username = "******"+Id++ };
            facade.GetLoginRepo().Add(login);
            Login login2 = new Login() { Customer = cusOne, Password = "******", Username = "******"+Id++ };
            facade.GetLoginRepo().Add(login2);

            facade = new Facade();
            Assert.GreaterOrEqual(facade.GetLoginRepo().GetAll().ToList().Count, 2);
        }
 public void Login(string username, Login login)
 {
     login.Username = username;
     if (!facade.GetLoginRepo().Update(login))
     {
         throw new HttpResponseException(HttpStatusCode.NotFound);
     }
 }
        public void Login_get_customer_by_login_returns_right_customer_test()
        {
            Facade facade = new Facade(); Customer cusOne = new Customer()
            {
                FirstName = "Jonas Olesen",
                Address = "Møbelvej 3",
                BirthDate = DateTime.Now.AddYears(-20),
                Email = "*****@*****.**",
                PhoneNumber = 22755692
            };
            cusOne = facade.GetCustomerRepo().Add(cusOne);

            Login login = new Login() { Customer = cusOne, Password = "******", Username = "******"+Id++ };
            login = facade.GetLoginRepo().Add(login);

            Assert.AreEqual(facade.GetLoginRepo().GetCustomerByLoginUsername(login.Username).FirstName, login.Customer.FirstName);
        }
        public void Login_remove_removes_from_db_test()
        {
            Facade facade = new Facade();
            Customer cusOne = new Customer()
            {
                FirstName = "Jonas Olesen",
                Address = "Møbelvej 3",
                BirthDate = DateTime.Now.AddYears(-20),
                Email = "*****@*****.**",
                PhoneNumber = 22755692
            };
            cusOne = facade.GetCustomerRepo().Add(cusOne);

            Login login = new Login() { Customer = cusOne, Password = "******", Username = "******" + Id++ };
            login = facade.GetLoginRepo().Add(login);

            facade = new Facade();
            facade.GetLoginRepo().Remove(login.Username);

            facade = new Facade();
            Assert.IsNull(facade.GetLoginRepo().Get(login.Username));
        }