Софтуерно Инженерство
Loading...
+ Нов въпрос
nsavov avatar nsavov 67 Точки

Unit Testing - Exercise 2 - Extended Database

цък

Предполагам, че тест 9 и тест 12 в джъдж проверяват дали ние сравняваме два масива - този който подаваме на ExtendedDatabase обекта, и private масива който той сторва.

 

Проблемът е, че в кода, който ни е предоставен в ExtendedDatabase няма Fetch() или подобен метод който да връща масив, какъвто има в кода на Database класа.

 

В задачата пише също така, че трябва да направим същите проверки като в първа задача, но ако се опитаме да ползваме класа Database, джъдж дава compile error. Явно иска само с ExtendedDatabase да работим.

 

Изглежда, че са променили малко тази задача от предишните курсове. За това решения, които намерих в гугъл не помогнаха особено много. А и в старите видеа никой не я решава защото все "няма време" :D

 

Успях да получа 100/100 като чийтнах и просто два пъти сравних два масива със себе си.

        [Test]
        public void ConstructorShoudInitializeCollection()
        {
            var expected = new Person[] { pesho, gosho };

            var db = new ExtendedDatabase(expected);

            var actual = expected;

            Assert.That(actual, Is.EqualTo(expected));
        }

Трябва да бъде "var actual = db.Fetch()"

 

Все пак е възможно нещо да пропускам. Интересно ми е вие как сте изкарали 100 точки?

Тагове:
0
C# OOP Advanced 05/12/2019 11:45:08
lkrastanov avatar lkrastanov 34 Точки
Best Answer

Не знам доколко е правилно, но си ги извадих един по един с FindById и след това сравних actual с expected. Нещо подобно се получи:

Person[] actual = {db.findBy... , db.findBy...}

1
05/12/2019 16:15:37