otarza / serv-cst

CST web III porject
6 stars 0 forks source link

HTTP სტატუსის კოდები #1

Closed ioseb closed 11 years ago

ioseb commented 11 years ago

აუცილებელია HTTP სტატუსის კოდების ჩამონათვალის გაკეთება. აღნიშნული ჩამონათვალის გამოყენება მოხდება მთელი აპლიკაციის მასშტაბით. სტატუსის კოდების სრული ჩამონათვალი იხილეთ შემდეგ მისამართზე: http://www.iana.org/assignments/http-status-codes/http-status-codes.xml

პროტოტიპის სახით გიგზავნით კლასს რომელიც უნდა დაასრულოთ დამოუკიდებლად:

package edu.cst.webserver.http;

public class HttpStatus {
    public final static int CONTINUE_100 = 100;
    public final static int OK_200 = 200;

    public static enum Code {
        CONTINUE(CONTINUE_100, "Continue"),
        OK(OK_200, "OK");

        private int code;
        private String message;

        private Code(int code, String message) {
            this.code = code;
            this.message = message;
        }

        public int getCode() {
            return this.code;
        }

        public String getMessage() {
            return this.message;
        }
    }
}

გამოყენების ნიმუში:

public class Test {
    public static void main(String[] args) {
        HttpStatus.Code code = HttpStatus.Code.OK;
        System.out.println("Code: " + code.getCode());
        System.out.println("Message: " + code.getMessage());
    }
}
vaxop commented 11 years ago

:+1:

ioseb commented 11 years ago

@vaxop

მოგიმზადე JUnit ტესტის ნიმუში ამ ამოცანის გასატესტად. და ეს მიდგომა გამოიყენე ყველა სტატუსის კოდის გასატესტად:

package edu.cst.webserver.http;

import junit.framework.Assert;
import org.junit.Test;

public class HttpStatusTest {
    @Test
    public void testStatus200_OK() {
        HttpStatus.Code code = HttpStatus.Code.OK;

        Assert.assertEquals(200, code.getCode());
        Assert.assertEquals("OK", code.getMessage());
    }
}

ასეთ რამეს გირჩევნ, რამდენი სტატუსის კოდის მხარდაჭერასაც დაამატებ მაშინათვე ჩაამატო ტესტი. გაითვალისწინე რომ JUnit ტესტები განთავსებული უნდა იყოს ტესტებისთვის განკუთვნილ დირექტორიაში. ზუსტად ნახე დემურს როგორც აქვს გაკეთებული.

@demonno დაეხმარე ამის გამართვაში თუ რამე გაუჭირდება ვახოს.

demonno commented 11 years ago

@vaxop შემაწუხე. /cc @ioseb

ioseb commented 11 years ago

@vaxop @demonno აკეთებთ რამეს?

demonno commented 11 years ago

@ioseb დღეს გავირეთ მე და ვახომ ერთად გაიგო ყველაფერი და სახლში რო მივალ გავაკეთებო დაგვპირდა.

ioseb commented 11 years ago

@demonno ok. @vaxop თუ რაღაცას ვერ იგებ, სირცხვილი არ არის აქ რო მიკითხო. არ მაქვს ილუზია რომ ყველა ყველაფერს ჰაერში დაიჭერთ ;) ამიტომ არ მოგერიდოს!

ioseb commented 11 years ago

@vaxop ზოგადად ძალიან კარგია. ტესტებიც ზალიან მომეწონა. მოკლედ ყოჩაღ! ვამაყობ შენით!

vaxop commented 11 years ago

:))