{"id":3702,"date":"2023-04-18T00:27:22","date_gmt":"2023-04-17T22:27:22","guid":{"rendered":"https:\/\/gliwice.wordcamp.org\/2023\/?post_type=wcb_session&#038;p=3702"},"modified":"2023-04-18T17:47:06","modified_gmt":"2023-04-18T15:47:06","slug":"tdd-z-react-jak","status":"publish","type":"wcb_session","link":"https:\/\/gliwice.wordcamp.org\/2023\/session\/tdd-z-react-jak\/","title":{"rendered":"TDD z React &#8211; jak?"},"content":{"rendered":"\n<p>W jaki spos\u00f3b pisa\u0107 komponenty Reactowe tak aby nasze oprogramowanie by\u0142o gotowe na zmiany? Jak testowa\u0107 FE? Czego nie warto testowa\u0107? W jaki spos\u00f3b w kodzie odseparowa\u0107 logik\u0119 biznesow\u0105 od element\u00f3w wizualnych? Wykonamy proste oprogramowanie s\u0142u\u017c\u0105ce do prze\u0142\u0105czania stan\u00f3w przy u\u017cyciu guzik\u00f3w. Napiszemy najpierw testy a p\u00f3\u017aniej kod potrafi\u0105cy te testy uszcz\u0119\u015bliwi\u0107. Ostatnia cz\u0119\u015b\u0107 warsztat\u00f3w to refactor kodu w oparciu o wcze\u015bniej przygotowane testy.<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<h5 class=\"wp-block-heading\" style=\"margin-bottom:0px;padding-bottom:0\">Grupa docelowa warsztat\u00f3w<\/h5>\n\n\n\n<p style=\"margin-top:var(--wp--preset--spacing--20)\">Programi\u015bci<\/p>\n<\/div>\n\n\n\n<h5 class=\"wp-block-heading\">Informacje o Prelekcji<\/h5>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-14f72f9e wp-block-group-is-layout-flex\" style=\"margin-top:var(--wp--preset--spacing--20);margin-bottom:15px\"><div class=\"taxonomy-wcb_session_category wp-block-post-terms\"><span class=\"wp-block-post-terms__prefix\">Poziom trudno\u015bci: <\/span><a href=\"https:\/\/gliwice.wordcamp.org\/2023\/session-category\/sredniozaawansowany\/\" rel=\"tag\">\u015aredniozaawansowany<\/a><span class=\"wp-block-post-terms__suffix\"> <\/span><\/div>\n\n<div class=\"taxonomy-wcb_track wp-block-post-terms\"><span class=\"wp-block-post-terms__prefix\">\u015acie\u017cka: <\/span><a href=\"https:\/\/gliwice.wordcamp.org\/2023\/track\/warsztaty-f\/\" rel=\"tag\">Warsztaty &#8211; sala F<\/a><\/div><\/div>\n\n\n\n<h5 class=\"wp-block-heading\">Prelegent<\/h5>\n\n\n<figure style=\"width:96px;height:96px;\" class=\"alignleft is-style-rounded wp-block-wordcamp-avatar\"><img loading=\"lazy\" decoding=\"async\" width=\"96\" height=\"96\" src=\"https:\/\/gliwice.wordcamp.org\/2023\/files\/2023\/04\/Sebatian-Kurzynowski-150x150.png\" class=\"attachment-96x96 size-96x96 wp-post-image\" alt=\"Sebastian Kurzynowski\" \/><\/figure>","protected":false},"excerpt":{"rendered":"<p>W jaki spos\u00f3b pisa\u0107 komponenty Reactowe tak aby nasze oprogramowanie by\u0142o gotowe na zmiany? Jak testowa\u0107 FE? Czego nie warto testowa\u0107? W jaki spos\u00f3b w kodzie odseparowa\u0107 logik\u0119 biznesow\u0105 od element\u00f3w wizualnych? Wykonamy proste oprogramowanie s\u0142u\u017c\u0105ce do prze\u0142\u0105czania stan\u00f3w przy u\u017cyciu guzik\u00f3w. Napiszemy najpierw testy a p\u00f3\u017aniej kod potrafi\u0105cy te testy uszcz\u0119\u015bliwi\u0107. Ostatnia cz\u0119\u015b\u0107 warsztat\u00f3w [&hellip;]<\/p>\n","protected":false},"author":16852791,"featured_media":0,"template":"wc-session","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1683979200,"_wcpt_session_duration":4800,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[3341],"footnotes":""},"session_track":[56],"session_category":[45],"class_list":["post-3702","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-warsztaty-f","wcb_session_category-sredniozaawansowany"],"jetpack_sharing_enabled":true,"session_date_time":{"date":"13\/05\/2023","time":"14:00"},"session_speakers":[{"id":"3341","slug":"sebastian-kurzynowski","name":"Sebastian Kurzynowski","link":"https:\/\/gliwice.wordcamp.org\/2023\/speaker\/sebastian-kurzynowski\/"}],"session_cats_rendered":"\u015aredniozaawansowany","_links":{"self":[{"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/sessions\/3702","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/types\/wcb_session"}],"version-history":[{"count":5,"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/sessions\/3702\/revisions"}],"predecessor-version":[{"id":3758,"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/sessions\/3702\/revisions\/3758"}],"speakers":[{"embeddable":true,"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/speakers\/3341"}],"author":[{"embeddable":true,"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wporg\/v1\/users\/skurzynowski"}],"wp:attachment":[{"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/media?parent=3702"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/session_track?post=3702"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/gliwice.wordcamp.org\/2023\/wp-json\/wp\/v2\/session_category?post=3702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}