Closed ioseb closed 11 years ago
სენსეი @ioseb fix-ებს ვამუღამებდი კომიტ მესიჯში და შემთხვევით მიმეხურა მარა გავხსენი თავიდან.
სენსეი @ioseb ორი სიტყვით მითხარით ვარგა რამედ? 71e55213af2a0936008bc4ba9719f0517d751fd8
@reflooding ზოგადად ძალიან კარგია, თუმცა შენიშვნები დაგიწერე კოდში. ორი საკითხი:
გაითვალისწინე რომ მაგ პარსერის გამოყენება ასევე დაგვჭირდება POST - ით გადმოგზავნილი ფორმის მონაცემებისთვის. შესაბამისად სტაბილური უნდა იყოს.
ყველაფერი გავითვალისწინე და გავაკეთე.
ერთი ტესტიც დავამატე, დღეს კიდევ რამოდენიმე ტესტს დავუწერ.
@reflooding
კოდის კომენტარში დაგიწერე და აქაც გავიმეორებ. ერთ ტესტ მეთოდში უნდა იყოს ერთი ლოგიკური ერთეული გატესტილი და არა რამდენიმე. ტესტები გააკეთე ასე:
@Test
public void testSimpleQueryStringParsing() {
}
@Test
public void testMalformedQueryStringParsing() {
}
@Test
public void testUTF8QueryStringParsing() {
}
ტესტების არსებობა არა მხოლოდ კოდის გამართულ მუშაობას ამოწმებს, არამედი გარკვეული დოკუმენტაციის როლი გააჩნია. თუ სიტყვაზე რომელიმე ტესტი არ იმუშავებს გარემო ზუსტად დაგიწერს რომლემა ტესტმა და რატომ არ იმუშავა. ყველა ტესტი უნდა იყოს ერთმანეთისგან იზოლირებული.
დამატებით ამ კომენტარსაც შეხედე https://github.com/reflooding/serv-cst/issues/2#issuecomment-14220756
აჰა გასაგებია, პირველი იუნიტ ტესტი დავწერე გუშინ და ძალიან მომეწონა :)
გავაგრძელებ მაგ მიდგომით.
@reflooding დაასრულე დროულად.
@ioseb მგონია რომ მოვრჩი, რაც სპეციფიკაციაში წავიკითხე და სხვა დანარჩენი მითითებების გათვალისწინებით წესით ისაა რაც უნდა იყოს.
თუ ასეა მგონი შეგვიძლია დავხუროთ.
აუცილებელია მოთხოვნის სტრიქონის ცალკეულ პარამეტრებად წაკითხვა(იხ. სპეციფიკაცია: http://tools.ietf.org/html/rfc3986#section-3.4).
ნიმუში:
ზემოთ ნაჩვენები ნიმუშიდან უნდა მივიღოთ ე.წ.
Map<String, String>
ობიექტი სადაცkey
არის პარამეტრის სახელი ხოლოvalue
პარამეტრის მნიშვნელობა. შესაბამისად:მიაქციეთ ყურადღება რომ ენკოდირებული ჰარის სიმბოლო
%20
დეკოდირებულია როგორც" "
.