Projekat

Općenito

Profil

Akcije

Podrška #25877

Zatvoren

tip: urnek za TDD: fetch_metric, set_metric

Dodano od Ernad Husremović prije oko 13 godina. Izmjenjeno prije oko 13 godina.

Status:
Zatvoreno
Prioritet:
Odmah riješiti
Odgovorna osoba:
Početak:
24.12.2011
Završetak:
% završeno:

100%

Procjena vremena:

Povezani tiketi 3 (0 otvoreno3 zatvorenih)

korelira sa F18 - Podrška #25309: fmk package - server db 4.0.6ZatvorenoErnad Husremović20.11.201121.11.2011

Akcije
korelira sa F18 - Podrška #25292: F18, parametri aplikacije - dbOdbačenoErnad Husremović18.11.2011

Akcije
korelira sa F18 - Podrška #25878: F18 0.9.26 - fetch/set_metricOdbačenoEmir Šator24.12.2011

Akcije
Akcije #1

Izmjenjeno od Ernad Husremović prije oko 13 godina

hernad@macan:~/github/F18_knowhow$ ./F18_test

----------------------------------------------------------------------------------------------------
      Version: Harbour 3.0.0 (Rev. 16951)
     Compiler: GNU C 4.2.1 (64-bit)
           OS: Darwin 10.8.0 x86_64
   Date, Time: 2011.12.24 19:30:01
Shortcut opt.: ON
     Switches: 
====================================================================================================
R No.  Line            TestCall()                                                   -> Result                                                                                | Expected                                                                             
----------------------------------------------------------------------------------------------------
 ...                                                                          
    27 SIFK_SIFV_TEST( IzSifk(_id_sif, _karakteristika, "01")                       -> "K1VAL3   "                                                                           | "K1VAL3   "                                                                          
    28 SIFK_SIFV_TEST( IzSifk(_id_sif, _karakteristika_n, "01")                     -> "K2VAL1 ,K2VAL2 ,K2VAL4                                                               | "K2VAL1 ,K2VAL2 ,K2VAL4                                                              
    29 FETCH_SET_METRI fetch_metric(_sect, NIL, _is_fakturisi)                      -> .F.                                                                                   | .F.                                                                                  
    30 FETCH_SET_METRI fetch_metric(_sect, NIL, _is_fakturisi)                      -> .T.                                                                                   | .T.                                                                                  
    31 FETCH_SET_METRI fetch_metric(_sect, NIL, _is_fakturisi)                      -> .F.                                                                                   | .F.                                                                                  
    32 FETCH_SET_METRI fetch_metric(_sect, f18_user(), _color )                     -> 50                                                                                    | 50                                                                                   
    33 FETCH_SET_METRI fetch_metric(_sect, f18_user(), _color )                     -> 50                                                                                    | 50                                                                                   
    34 FETCH_SET_METRI fetch_metric(_sect, "<>", _color )                           -> 101                                                                                   | 101                                                                                  
    35 FETCH_SET_METRI fetch_metric(_sect, f18_user(), _color )                     -> 101                                                                                   | 101                                                                                  
    36 FETCH_SET_METRI fetch_metric(_sect, f18_user(), _color )                     -> 70                                                                                    | 70                                                                                   
    37 FETCH_SET_METRI fetch_metric(_sect)                                          -> "hbakir"                                                                              | "hbakir"                                                                             
    38 FETCH_SET_METRI fetch_metric(_sect, NIL, "default_default")                  -> "default_default"                                                                     | "default_default"                                                                    
====================================================================================================
Test calls passed:         38 ( 100.00 % )
Test calls failed:          0 ( 0.00 % )
                   ----------
            Total:         38 ( Time elapsed: 0.38 seconds )

Akcije #2

Izmjenjeno od Ernad Husremović prije oko 13 godina

test je najbolja dokumentacija

Rezime najbitnijih stvari:
  • "<>" - predstavlja tekućeg usera
  • "!!UNSET!!" - briše stavku iz metric tablele (set_metric funkcija=
  • karakterni parametri mogu se iščitatvati sa fetch_metric bez default_value parametra

znači karakterni globalni parametri rade ovako:

set_metric("date_format", NIL, "german")

fetch_metric("date_format") => "german" 

ali naravno isto dobijamo i sa pozivom svih parametara, gdje je "international" default_value

fetch_metric("date_format", NIL, "international")

u testovima je demonstrirano korištenje karakter, numeric, logical varijabli.

Ostalo je još date ...

Akcije #3

Izmjenjeno od Ernad Husremović prije oko 13 godina

dodao ova dva testa

   39 FETCH_SET_METRI fetch_metric(_sect, "hernad", _dat_2)                        -> HB_SToD("20111224")                                                                   | HB_SToD("20111224")                                                                  
    40 FETCH_SET_METRI fetch_metric(_sect, NIL, _dat_2)                             -> HB_SToD("20110101")                                                                   | HB_SToD("20110101")                                                               

super rade i oni

Akcije #4

Izmjenjeno od Ernad Husremović prije oko 13 godina

  • Odgovorna osoba promijenjeno iz Ernad Husremović u Saša Vranić
  • Prioritet promijenjeno iz Normalan u Odmah riješiti

super sada i kolege imaju urnek za testiranje:

https://github.com/knowhow/F18_knowhow/commit/5c36a0511ee983dbc798bf25e0135f57205bfe18

pogledati i u sličnim situacijama početi primjenjivati.

Akcije #5

Izmjenjeno od Ernad Husremović prije oko 13 godina

  • Naslov promijenjeno iz TDD fetch_metric, set_metric u tip: urnek za TDD: fetch_metric, set_metric
Akcije #6

Izmjenjeno od Ernad Husremović prije oko 13 godina

TDD - test prije implementacije

TDD se bazira na tome da se prvo napišu testovi (test/ ...) - svi bitni use case-ovi PRIJE IMPLEMENTACIJE.

Pišu se samo skeletoni funkcije koji vraćaju neke dummy vrijednosti (a ni to ne mora)

Code review se obavlja tako što se vrši pregled testova koji prikazuju sve planirane načine implementacije funkciija.

Ovaj princip nam omogućava da ispravno utvrdimo API funkcija, i onda krenemo u realizaciju tih funkcija.

Akcije #7

Izmjenjeno od Ernad Husremović prije oko 13 godina

Napomena

Ja sam, s obzirom da činjenicu da nemam kome dati code na review radio tako što sam paralelno pisao test case i implementaciju.

Tome je doprinijela i činjenica što sam već imao staru implementaciju.

Akcije #8

Izmjenjeno od Ernad Husremović prije oko 13 godina

  • Status promijenjeno iz Dodijeljeno u Čeka se feedback
  • % završeno promijenjeno iz 0 u 90

Uočiti

Ovo je bitan milestone F18. Uz ove procedure i drugi developeri mogu raditi značajnije operacije na core-u F18.

Akcije #9

Izmjenjeno od Ernad Husremović prije oko 13 godina

  • Status promijenjeno iz Čeka se feedback u Zatvoreno
  • Odgovorna osoba promijenjeno iz Saša Vranić u Ernad Husremović
  • % završeno promijenjeno iz 90 u 100
Akcije #10

Izmjenjeno od Saša Vranić prije oko 13 godina

jasno, pročitao sam

Akcije

Također dostupno kao Atom PDF