public void Test_Delete_DeletesStylistFromDatabase()
        {
            string name1 = "Rebecca";
              Stylist testStylist1 = new Stylist(name1);
              testStylist1.Save();

              string name2 = "Tony";
              Stylist testStylist2 = new Stylist(name2);
              testStylist2.Save();

              Client testClient1 = new Client("Sam", testStylist1.GetId());
              testClient1.Save();
              Client testClient2 = new Client("Beth", testStylist2.GetId());
              testClient2.Save();
              Console.WriteLine(Client.Find(testClient1.GetId()).GetName());
              Console.WriteLine(Client.Find(testClient2.GetId()).GetName());

              testStylist1.Delete();

              List<Stylist> resultStylists = Stylist.GetAll();
              List<Stylist> testStylistList = new List<Stylist> {testStylist2};

              List<Client> resultClients = Client.GetAll();
              List<Client> testClientList = new List<Client> {testClient2};

              Assert.Equal(testStylistList, resultStylists);
              Assert.Equal(testClientList, resultClients);
        }
        public void Test_Find_FindsCategoryInDatabase()
        {
            Client testClient = new Client("Rebecca", 1);
              testClient.Save();

              Client foundClient = Client.Find(testClient.GetId());

              Assert.Equal(testClient, foundClient);
        }
        public void Test_Save_SavesClientToDatabase()
        {
            Client testClient = new Client("Rebecca", 1);
              testClient.Save();

              List<Client> result = Client.GetAll();
              List<Client> testList = new List<Client>{testClient};

              Assert.Equal(testList, result);
        }
        public void Test_Find_ReturnsASpecificClientObject()
        {
            //Arrange
              Client newClient = new Client("Wendy", "blonde", 3);
              newClient.Save();

              //Act
              Client foundClient = Client.Find(newClient.GetId());

              //Assert
              Assert.Equal(newClient, foundClient);
        }
        public void Test_GetAll_RetrievesAllClientsFromDatabase()
        {
            Client firstClient = new Client("Rebecca", 1);
              Client secondClient = new Client("Tony", 1);
              firstClient.Save();
              secondClient.Save();

              List<Client> testList = new List<Client>{firstClient, secondClient};
              List<Client> result = Client.GetAll();

              Assert.Equal(testList, result);
        }
        public void Client_Save_SavesObjToDB()
        {
            Stylist newStylist = new Stylist("John Smith", "(123)-456-7890");

            newStylist.Save();
            Client newClient = new Client("Tom Smith", "(555)-123-4567", newStylist.GetId());

            newClient.Save();

            Client savedClient = Client.GetAll()[0];

            Assert.Equal(newClient, savedClient);
        }
        public void Client_DeleteAll_RemovesAllClientsFromDB()
        {
            Client newClient = new Client("Tom Smith", "(555)-123-4567", 1);

            newClient.Save();

            Client.DeleteAll();
            List <Client> controlList = new List <Client> {
            };
            List <Client> testList    = Client.GetAll();

            Assert.Equal(controlList, testList);
        }
        public void Client_Update_UpdatesTelephone()
        {
            Stylist newStylist = new Stylist("John Smith", "(123)-456-7890");

            newStylist.Save();

            Client newClient = new Client("Tom Smith", "(555)-123-4567", newStylist.GetId());

            newClient.Save();

            newClient.Update("John Locke", "(481)-347-1234");

            Assert.Equal("(481)-347-1234", newClient.GetTelephone());
        }
        public void Test_Delete_DeleteClientFromDatabase()
        {
            string name1 = "Rebecca";
              Client testClient1 = new Client(name1, 0);
              testClient1.Save();
              string name2 = "Tony";
              Client testClient2 = new Client(name2, 0);
              testClient2.Save();

              testClient1.Delete();
              List<Client> result = Client.GetAll();
              List<Client> testClientList = new List<Client>{testClient2};

              Assert.Equal(testClientList, result);
        }
        public void Test_DeleteOne_DeletesASpecificClientObject()
        {
            //Arrange
              Client firstClient = new Client("Wendy", "blonde", 3);
              firstClient.Save();
              Client secondClient = new Client("Jasper", "brunette", 2);
              secondClient.Save();

              //Act
              secondClient.Delete();
              List<Client> expectedClient = new List<Client> {firstClient};
              List<Client> testClient= Client.GetAll();

              //Assert
              Assert.Equal(expectedClient, testClient);
        }
        public void Stylist_DeleteClients_DeletesAllStylistsClients()
        {
            Stylist newStylist = new Stylist("John Smith", "(123)-456-7890");

            newStylist.Save();
            Client client1 = new Client("Tom Smith", "(555)-123-4567", newStylist.GetId());

            client1.Save();
            Client client2 = new Client("Billy Bob", "(123)-098-7654", newStylist.GetId());

            client2.Save();

            newStylist.DeleteClients();

            List <Client> controlList = new List <Client> {
            };
            List <Client> testList    = newStylist.GetClients();

            Assert.Equal(controlList, testList);
        }
        public void Test_Delete_DeletesStylistAndClientsByStylistId()
        {
            //Arrange
              Stylist firstStylist = new Stylist("Tracy", 17);
              firstStylist.Save();
              Stylist secondStylist = new Stylist("Chad", 10);
              secondStylist.Save();

              Client firstClient = new Client("Jasper", "brunette", firstStylist.GetId());
              firstClient.Save();
              Client secondClient = new Client("Wendy", "blonde", secondStylist.GetId());
              secondClient.Save();

              List<Stylist> expectedStylist = new List<Stylist>{firstStylist};
              List<Client> expectedResult = new List<Client> {firstClient};
              //Act
              secondStylist.Delete();

              List<Stylist> resultingStylist = Stylist.GetAll();
              List<Client> result = Client.GetAll();
              //Assert
              Assert.Equal(expectedStylist, resultingStylist);
              Assert.Equal(expectedResult, result);
        }
        public void Test_GetClients_FindsClientsByStylistId()
        {
            //Arrange
              Stylist newStylist = new Stylist("Tracy", 18);
              newStylist.Save();

              Client firstClient = new Client("Jasper", "brunette", newStylist.GetId());

              firstClient.Save();
              Client secondClient = new Client("Wendy", "blonde", 2);
              secondClient.Save();
              List<Client> expectedResult = new List<Client> {firstClient};
              //Act
              List<Client> result = newStylist.GetClients();
              //Assert
              Assert.Equal(expectedResult, result);
        }
        public void Test_Save_SavesCorrectObjectToDatabase()
        {
            //Arrange
              Client newClient = new Client("Wendy", "blonde", 3);

              //Act
              newClient.Save();
              Client savedClient = Client.GetAll()[0];

              //Assert
              Assert.Equal(newClient, savedClient);
        }
        public void Test_SetHairColorAndStylistId_AdjustsDatabaseCorrectly()
        {
            // Arrange
              Client firstClient = new Client("Wendy", "blonde", 3);
              firstClient.Save();

              //Act
              firstClient.SetHairColor("brunette");
              firstClient.SetStylistId(2);
              Client resultClient = Client.Find(firstClient.GetId());

              //Assert
              Assert.Equal("brunette", resultClient.GetHairColor());
              Assert.Equal(2, resultClient.GetStylistId());
        }
        public void Test_Update_UpdatesClientInDatabase()
        {
            string name = "Rebecca";
              int stylistId = 1;
              Client testClient = new Client(name, stylistId);
              testClient.Save();
              string newName = "Becky";
              int newStylistId = 2;

              testClient.Update(newName, newStylistId);

              string result = testClient.GetName();

              Assert.Equal(newName, result);
        }
        public void Test_GetClients_RetrievesAllClientsWithStylist()
        {
            Stylist testStylist = new Stylist("Rebecca");
              testStylist.Save();

              Client firstClient = new Client("Sam", testStylist.GetId());
              firstClient.Save();
              Client secondClient = new Client("Beth", testStylist.GetId());
              secondClient.Save();

              List<Client> testClientList = new List<Client> {firstClient, secondClient};
              List<Client> resultClientList = testStylist.GetClients();

              Assert.Equal(testClientList, resultClientList);
        }