Portál AbcLinuxu, 22. května 2024 13:34


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
25.9.2012 18:13 Radek Miček | skóre: 23 | blog: radekm_blog
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Odpovědět | Sbalit | Link | Blokovat | Admin
Osobně bych šel do staticky typovaného jazyka s odvozováním typů, abychom se vyhli těm nejtriviálnějším chybám.
Statický typový systém může odhalit docela dost chyb – cituji z popisu jazyka Ur/Web, který je určen pro tvorbu spolehlivých webových aplikací:
The signature of the standard library is such that well-typed Ur/Web programs "don't go wrong" in a very broad sense. Not only do they not crash during particular page generations, but they also may not:
  • Suffer from any kinds of code-injection attacks
  • Return invalid HTML
  • Contain dead intra-application links
  • Have mismatches between HTML forms and the fields expected by their handlers
  • Include client-side code that makes incorrect assumptions about the "AJAX"-style services that the remote web server provides
  • Attempt invalid SQL queries
  • Use improper marshaling or unmarshaling in communication with SQL databases or between browsers and web servers
25.9.2012 20:25 dejvik | skóre: 12 | blog: vysatost
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails

Ač to vypadá zajímavě, je to teprve na začátku. Jen dva díly tutoriálu, reference manuál nejde. Osobně bych potřeboval knihovnu pro napojení na Facebook, něco jako ORM atd. To univerzum knihoven je příliš malé.

25.9.2012 22:41 Radek Miček | skóre: 23 | blog: radekm_blog
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Mně referenční manuál funguje. Několik článků o jazyku Ur/Web napsal tento rok E. Z. Yang ve svém blogu.

Jazyk Ur/Web jsem uvedl hlavně jako příklad toho, co je možné udělat. Více knihoven je k dispozici pro jazyk Haskell a framework Yesod nebo pro jazyk OCaml a framework Ocsigen. Nicméně Ur/Web má silnější typový systém s IMO velmi atraktivním pojetím záznamů.
25.9.2012 23:06 phax7 | skóre: 34 | blog: PhaX_blog
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails

Ten HelloWorld ocsigenu nevypadá z nejpřívětivějších:) Ale to je taky tím že už jsem spoustu let zvyklý na jiné jazyky...

http://ocsigen.org/howto/helloworld

25.9.2012 23:17 Radek Miček | skóre: 23 | blog: radekm_blog
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Může to být i kratší:
open Lwt
open Eliom_content.Html5.D
open Eliom_service
open Eliom_parameter
open Eliom_registration.Html5

let main_service =
  register_service ~path:["hello"] ~get_params:unit
    (fun () () -> return (html (head (title (pcdata "Hello World of Ocsigen")) [])
                               (body [h1 [pcdata "Hello World!"]])))
26.9.2012 13:16 lmb
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Hello world v Happstacku (Haksell) ;-)

import Happstack.Server

main = simpleHTTP nullConf $ ok "Hello, World!"
26.9.2012 13:17 lmb
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
s/Haksell/Haskell/
27.9.2012 17:57 nyan
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Statický typový systém může odhalit docela dost chyb
Nebo taky nemusi. Pokazde kdyz udelate

void x(void *p) {
  ...
  some_struct* t = (some_struct*)p;
  ...
}
...jde type checking do pr...kenny vohrady.
pavlix avatar 28.9.2012 12:03 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Suffer from any kinds of code-injection attacks
To by se ten jazyk musel ale používat na všechno a řetězce v něm být pouhé texty, ne kód jako například SQL příkazy nebo javascript a kvůli některým vlastnostem by to v podstatě nemělo být ani HTML.

To už by mi přišlo jako docela hezký framework. Nicméně s těmito vlastnostmi přichází neflexibilita. Tudíž je ten jazyk prakticky bez šance získat výrazný podíl na webových aplikacích a je vhodný jen pro určitou škálu projektů.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
28.9.2012 14:56 Radek Miček | skóre: 23 | blog: radekm_blog
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
To by se ten jazyk musel ale používat na všechno a řetězce v něm být pouhé texty
Ano, on se používá na všechno – generuje se z něj C kód pro server, SQL pro databázi, HTML a JavaScript pro klienta.
pavlix avatar 1.10.2012 01:34 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Pak tedy viz druhý odstavec.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
stanger avatar 25.9.2012 19:24 stanger | skóre: 18
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Odpovědět | Sbalit | Link | Blokovat | Admin
Jako nekolikanasobne certifikovany Javista jeste starym dobrym Sunem si myslim, ze ta deprese brzo prejde (sam jsem si ten prechod na Ruby a Rails prozil). Jinak doporocuju v Rails drzet pokryti co nejbliz 100% prave z podobnych obav (u Javy jsem par % dole toleroval).

Pro testovani pouzivam kombinaci Cucumber a FactoryGirl. Ajax testuju Watirem.
25.9.2012 23:22 retroslava | skóre: 9 | blog: TryCatch | Žižkoff
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
Odpovědět | Sbalit | Link | Blokovat | Admin
Array.new(10).size.must_equal 10 není MiniTest::Unit ale MiniTest::Spec. assert právě naopak je součást MiniTest::Unit. To musí vypadat ta aplikace teda, když netušíte ani takovýhle základní fakt. Snad se v tom kolega vyzná líp.
Pozor! Jsem naprostý idiot. Co jsem napsal včera dnes už dávno neplatí. Zavazuji se, že budu diskutovat nezávazně.
26.9.2012 00:08 phpGuru
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
u technickeho clanku povazuji takove osobni invektivy v diskuzi za kontraproduktivni.

Prosim vysvetlete problematiku a upozornete klidne na nejake chyby, ale to jestli nejaky kolega nejakeho autora je takovy nebo makovy nevede opravdu k nicemu. Ja kdyz uz si dam tu praci a ctu nejakou diskuzi, tak se chci neco dozvedet a ne se prodirat mnozstvim narcistickych komentaru.

Nekomentuji casto, ale tohle me opravdu nadzvedlo. Chapu , ze kdyz jsou zde blogy s nejakou politickou tematikou, tak ze se vede polemicka a afektovana diskuze, ale v takovehle atmosfere aby se nejaky autor bal neco referovat o sve praci.

Dekuji.
26.9.2012 00:36 retroslava | skóre: 9 | blog: TryCatch | Žižkoff
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails
To já si jen vylévám dušičku. Zaráží mě když se někdo odváží publikovat jak něco udělal, když o tom asi nemá moc tušení. Potom si ten článek někdo přečte a nebere z něho moudra, která jsou naprosté blbosti. S takovýma lidma se potom běžně setkávám v práci a snaží se mě přesvědčit že já jsem ten neznalý.

MiniTest::Spec je standardní součást minitestu. Je to jen oslazená syntaxe normálního MiniTest::Unit a uvnitř se stejně používá klasický assert. Normálně dál převažují klasícké testy přes asserty. Je to takovej kompromis mezi syntaxí RSpecu a MiniTestu. Zajímavější než tohle lepení zbytečností na hlavní objekt je fakt, že se tyhle styly můžou kombinovat. Hlavně to, že můžeme používat describe a it pro "okomentování testů" a uvnitř použít klasický assert. Tahle možnost se mi líbí pro integrační testy a hojně jí využívám.

Jinak jako důkaz se můžete podívat na testy Rails. Ačkoliv jsou všechny přepsány do MiniTestu, používají klasický assert (schválně).

Lepší?
Pozor! Jsem naprostý idiot. Co jsem napsal včera dnes už dávno neplatí. Zavazuji se, že budu diskutovat nezávazně.
26.9.2012 12:13 dejvik | skóre: 12 | blog: vysatost
Rozbalit Rozbalit vše Re: MiniTest v našem projektu v Ruby on Rails

Máte pravdu. Tušil jsem, že tam budu mít chyby; bylo to psáno v rychlosti:)  "must_equal" je v
MiniTest::Spec a ne v MiniTest::Unit. Opravím to.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.