Lista artykułów

Trzymajcie dzieci z dala od Xboxa!!!

Czego potrzeba do zostania perkusistą, jeśli nie masz warunków do nauki gry na prawdziwej perkusji? Oczywiście konsoli Xbox i gry Guitar Hero, poczynając od edycji World Tour. A jeśli nie masz ani gry, ani konsoli? Za grę robić może świetny kawałek open-source’owego napisanego w Pythonie softu pod nazwą Frets on Fire z modem FoFiX. Za [...]

[Spis treści] Cykl o mock objects i Rhino Mocks

Dobiegł końca pierwszy na tym blogu cykl (chociaż posty pojawiały się częściej niż “teoretycznie co 28 dni”) technicznych postów rozprawiających się z jednym zagadnieniem krok po kroku. A konkretnie: pisaniem testów jednostkowych z wykorzystaniem “obiektów mockujących” dostarczanych przez mechanizm zaimplementowany w bibliotece Rhino Mocks. Pomyślałem że dobrze będzie zebrać w jednym miejscu to co się [...]

Przechwytywanie wartości parametrów z metod mock objects

Dzisiaj spojrzymy na sytuację, w której będziemy potrzebowali nie weryfikować, ale zapamiętać wartości przekazywane do mock objects w celu późniejszego ich wykorzystania. Scenariusz ten jest dość nietypowy, w moim przypadku SUT (System Under Test) rejestrował pewną operację w komponencie odpowiedzialnym za jej uruchomienie w odpowiednim momencie.  wykonanie. Rejestracja odbywała się z wykorzystaniem wyrażeń lambda, więc [...]

Wkrocz na drogę do sukcesu – zarejestruj się na Imagine Cup 2010!

Sam się dziwię, że potrafię “skomponować”, opublikować i autentycznie szczerze PODPISAĆ SIĘ pod tak ohydnie marketingowym tekstem. Ale… cóż, taka prawda. Nie jestem chyba w stanie wystarczająco dosadnie napisać jak bardzo zachęcam studentów do uczestnictwa w tym wydarzeniu. Sam z pewnością nie byłbym tu gdzie jestem teraz, gdybym kiedyś olał istnienie niesamowitych okazji, jakie daje [...]

Tymczasowe wstrzymanie aplikacji ASP.NET

Krótka ciekawostka, pewnie znana większości: wrzucając do katalogu głównego aplikacji ASP.NET plik o nazwie app_offline.htm spowodujemy, że będzie on serwowany jako odpowiedź na wszystkie żądania do tej aplikacji. Zastosowań może mieć kilka, z których najbardziej oczywistym jest tymczasowe "zdjęcie" witryny podczas wgrywania nowej wersji czy rozwiązywania jakiegoś problemu: wypełniamy wówczas ten plik komunikatem o tymczasowej [...]

Shared folders w Virtual Box

Po bardzo długim okresie korzystania z Virtual PC postanowiłem spróbować jak to jest z Virtual Box, czyli darmowym środowiskiem od Suna. Powodów jest kilka, zaczynając od wsparcia dla maszyn 64 bitowych, przez wykorzystanie więcej niż jednego rdzenia fizycznego procesora, a kończąc na zwykłej chęci poznania alternatywnego rozwiązania. Już na początku okazało się, że w VBox [...]

Application Events

Znany pewnie większości z Was Udi Dahan przedstawił koncepcję Domain Events, która zainspirowała mnie do implementacji rozwiązania opartego na podobnych założeniach. Ayende Rahien z kolei jakiś czas temu zachwycił się kawałkiem kodu z projektu Mass Transit… i po zastanowieniu się nad jego bardzo fajną konstrukcją postanowiłem przy okazji skorzystać z czegoś podobnego. Do tego dorzucimy [...]

Testowanie klas abstrakcyjnych przy pomocy mocków

Generalnie moment, w którym natkniemy się na potrzebę przetestowania testami jednostkowymi klasy abstrakcyjnej powinien być momentem okrzyku: "refactoring czas zacząć!". Takie coś teoretycznie nie powinno mieć miejsca; testuje się raczej funkcjonalność faktycznie wykorzystywaną w systemie, a więc bardziej klasy z niej dziedziczące. Odpowiednia hierarchia klas uzupełniona odpowiednią hierarchią testów jednostkowych rozwiązuje problem. Ale wiadomo – [...]

Basenowo-krępujące sko_dev_jarzenie

W ramach utrzymywania pozorów dbania o tężyznę fizyczną udaję się dwa razy w tygodniu na basen, na 7 rano. Jakież było dziś moje zaskoczenie, gdy po wykonaniu założonego planu wodnego przeniosłem swoje ciało z miniakwenu pod natryski i zastałem tam babę z mopem szorującą ściany pryszniców! Czy taka czynność nie powinna być załatwiona PRZED otwarciem [...]

Copy/paste reference w Visual Studio

Może wszyscy o tym wiedzą i tylko ja byłem tak prostacko nieoświecony, ale niedawno znalazłem w Visual Studio funkcjonalność, która, jak się okazało, była tam od wielu lat. A ja, ślepiec nad ślepcami i ignorant nad ignorantami, podniecam się nią dopiero teraz. Podniecacz nad podniecaczami… Prędko, prędko baśń się baje, nie tak prędko… okienko "Add [...]

11

Captcha wokół nas – czyli zabawy z łamaniem tokenów

Pisząc aplikacje do automatyzacji pewnych procesów na stronach www (dodawarka, spamiarki, autologowanie) często stajezmy z problemem zabezpieczań opartych na tokenach obrazkowych. Polegają one ze jest wygenerowany obrazek  z losowym tekstem który należy przepisać do formularza. Generalnie moim zdaniem tokeny obrazkowe to tylko przeszkadzają w oglądaniu stron, bo ludzie  niedowidzący często nie są w stanie rozpoznać […]

Zdarzenia w mock objects

Testowanie obsługi zdarzeń oraz faktu ich wywołania jest niekiedy równie ważne co przetestowanie każdej innej integracji pomiędzy dwoma obiektami. Scenariusz jest na tyle specyficzny, że poświęcę mu osobną notkę. Wywoływanie zdarzeń Zapomnijmy na razie o maglowanym przez ostatnie kilka wpisów kontrolerze i spójrzmy na inną sytuację. Wyobraźmy sobie, że mamy w systemie klasę odpowiedzialną za [...]

Zwięzła obsługa wyjątków z Enterprise Library

Po dość długiej przerwie urlopowej, o której pewnie (choćby sam dla siebie w przyszłości) coś skrobnę, ponownie istnieję dla świata. Do mocków wrócę wkrótce, póki co – coś z zupełnie innej beczki. Znajomość Enterprise Library, bądź szpanersko EntLiba, była kiedyś wyznacznikiem "döjrzałego programisty .NET". Wydaje mi się że teraz już tak nie jest, a to [...]

Konfiguracja zachowania metod dla stubów

Po poprzednim odcinku potrafimy już dowolnie weryfikować i konfigurować wartości parametrów dla metod. Dzisiaj z kolei poustawiamy akcje, które mają się w momencie wywołania metod wykonać. Jest to czynność zdecydowanie prostsza, ponieważ właściwie wszystko mamy w Intellisense. Zobaczmy: Zwracana wartość Najprostsza możliwa konfiguracja to ustawienie wartości zwracanej przez metodę. Obiekt implementujący interfejs IMethodOptions zwracany przez [...]

Oto liczby z jutrzejszego dużego lotka:… Ciao!

Jakiś czas temu na blogu Polishwords Tomasz Smykowski wspomniał o interesującej inicjatywie. Inicjatywie, którą można określić jako Google z ludzką twarzą, Google z krwi, mięcha i kości. Google z poczuciem humoru i (nie sztuczną!) inteligencją. Od początku istnienia bloga nie zdarzyło mi się jeszcze opisywać tu żadnej witryny internetowej, ale tym razem, w ramach wyjątku [...]