public void ChangingAlreadyChangedPhoneNumberWithAnotherPhoneNumberShouldReturnZeroChanges()
        {
            var repository = new PhonebookRepository();
            var contactName = "Pesho";
            string[] phoneNumbers = { "0899 777 235", "02 / 981 11 11" };
            var numberToChange = "911";
            var anotherNumberToChange = "111";

            repository.AddPhone(contactName, phoneNumbers);
            repository.ChangePhone(phoneNumbers[0], numberToChange);
            var actual = repository.ChangePhone(phoneNumbers[0], anotherNumberToChange);

            Assert.AreEqual(0, actual);
        }
コード例 #2
0
        public void TestChangePhoneNumberOfPhonesShouldRemainTheSame()
        {
            var testRepository = new PhonebookRepository();
            int initialCountOfPhoneNumbers = testRepository.PhonesCount;
            testRepository.ChangePhone("+359885652482", "0888888888");

            Assert.AreEqual(initialCountOfPhoneNumbers, testRepository.PhonesCount);
        }
コード例 #3
0
        public void TestChangePhoneNumberOfPhonesShouldRemainTheSame()
        {
            var testRepository             = new PhonebookRepository();
            int initialCountOfPhoneNumbers = testRepository.PhonesCount;

            testRepository.ChangePhone("+359885652482", "0888888888");

            Assert.AreEqual(initialCountOfPhoneNumbers, testRepository.PhonesCount);
        }
コード例 #4
0
        public void TestChangeUnexistingPhoneMustReturnNumberOfChangedPhones()
        {
            var test = new PhonebookRepository();

            test.AddPhone("Pesho", new[] { "08895624", "08895625", "08895626" });

            int changedPhones = test.ChangePhone("08895629", "08895628");

            Assert.AreEqual(0, changedPhones);
        }
コード例 #5
0
        public void ChangeDoubleMultiplePhoneTest()
        {
            PhonebookRepository target = new PhonebookRepository();

            var name    = "Kalina";
            var numbers = new List <string>();

            numbers.Add("+35989943242235");
            target.AddPhone(name, numbers);

            name    = "Pesho";
            numbers = new List <string>();
            numbers.Add("+35989943242235");
            target.AddPhone(name, numbers);

            var actual = target.ChangePhone("+35989943242235", "+0000000000000");

            actual = target.ChangePhone("+35989943242235", "+0000000000000");
            Assert.AreEqual(0, actual);
        }
        public void ChangingPhoneNumberWithItselfShouldReturnOneChange()
        {
            var repository = new PhonebookRepository();
            var contactName = "Pesho";
            string[] phoneNumbers = { "0899 777 235", "02 / 981 11 11" };
            var numberToChange = "0899 777 235";

            repository.AddPhone(contactName, phoneNumbers);
            var actual = repository.ChangePhone(numberToChange, numberToChange);

            Assert.AreEqual(1, actual);
        }
コード例 #7
0
        public void TestChangePhoneOnece()
        {
            string name = "Kalina";

            string[]            item = new string[] { "+359899777235", "+359899777235" };
            PhonebookRepository phoneBookRepository = new PhonebookRepository();

            phoneBookRepository.AddPhone(name, item);
            int result = phoneBookRepository.ChangePhone("+359899777235", "+359899777444");


            Assert.AreEqual(result, 1);
        }
コード例 #8
0
        public void TestChangeSinglePhoneMustReturnNumberOfChangedPhones()
        {
            var test = new PhonebookRepository();

            test.AddPhone("Pesho", new[] { "08895624", "08895625", "08895626" });

            int changedPhones = test.ChangePhone("08895624", "08895628");

            Assert.AreEqual(1, changedPhones);

            // Number of phones should stay unchanged
            Assert.AreEqual(3, test.KeyNumberValueEntryCount);
        }
        public void TestChangeSingleExistingPhone()
        {
            PhonebookRepository phonebook = new PhonebookRepository();

            phonebook.AddPhone("Nakov", new string[] { "+359887333555" });
            int changedPhonesCount = phonebook.ChangePhone("+359887333555", "+359888888888");

            Assert.AreEqual(1, changedPhonesCount);
            string expectedResult = "[Nakov: +359888888888]";

            PhonebookEntry[] listedEntries = phonebook.ListEntries(0, 1);
            string           actualResult  = string.Join("; ", (object[])listedEntries);

            Assert.AreEqual(expectedResult, actualResult);
        }
コード例 #10
0
        public void ShouldNotChangeUserPhonesWhenDuplicate()
        {
            PhonebookRepository repo = new PhonebookRepository();

            string        userName = "******";
            string        phone    = "088 322 33 44";
            List <String> numbers  = new List <string>();

            numbers.Add(phone);
            repo.AddPhone(userName, numbers);
            repo.ChangePhone(phone, phone);
            var    testObj = GetInstanceField(typeof(PhonebookRepository), repo, "_sortedEntries");
            string result  = testObj.ToString();

            Assert.IsTrue(result.Contains(phone));
        }
コード例 #11
0
        public void TestChangePhoneWithMerge()
        {
            PhonebookRepository phonebook = new PhonebookRepository();

            phonebook.AddPhone("Nakov", new string[] { "+359887333555", "+359887333999" });
            phonebook.AddPhone("Ina", new string[] { "+359887333999" });
            phonebook.AddPhone("Ani", new string[] { "+359887333555", "359887333444" });
            int changedPhonesCount = phonebook.ChangePhone("+359887333999", "+359887333555");

            Assert.AreEqual(2, changedPhonesCount);
            string expectedResult =
                "[Ani: +359887333555, 359887333444]; [Ina: +359887333555]; [Nakov: +359887333555]";

            PhonebookEntry[] listedEntries = phonebook.ListEntries(0, 3);
            string           actualResult  = string.Join("; ", (object[])listedEntries);

            Assert.AreEqual(expectedResult, actualResult);
        }
コード例 #12
0
        public void ChangeNoMatchesPhoneTest()
        {
            PhonebookRepository target = new PhonebookRepository();

            var name    = "Kalina";
            var numbers = new List <string>();

            numbers.Add("+35989943242235");
            target.AddPhone(name, numbers);

            name    = "Kalina";
            numbers = new List <string>();
            numbers.Add("+359899777235");
            target.AddPhone(name, numbers);

            var actual = target.ChangePhone("+0000000000000", "+11111111111111");

            Assert.AreEqual(0, actual);
        }
コード例 #13
0
        public void TestChangeSharedPhone()
        {
            PhonebookRepository phonebook = new PhonebookRepository();

            phonebook.AddPhone("Nakov", new string[] { "+359887333555", "+3592981981" });
            phonebook.AddPhone("Ina", new string[] { "+3592981981" });
            phonebook.AddPhone("Aneliya", new string[] { "+3592981981" });
            phonebook.AddPhone("Niki", new string[] { "+3592981981", "+359999888777" });
            int changedPhonesCount = phonebook.ChangePhone("+3592981981", "+3592982982");

            Assert.AreEqual(4, changedPhonesCount);
            string expectedResult =
                "[Aneliya: +3592982982]; [Ina: +3592982982]; [Nakov: +3592982982, +359887333555]; " +
                "[Niki: +3592982982, +359999888777]";

            PhonebookEntry[] listedEntries = phonebook.ListEntries(0, 4);
            string           actualResult  = string.Join("; ", (object[])listedEntries);

            Assert.AreEqual(expectedResult, actualResult);
        }