analizer 22.09.2011 06:32 mcabber

почитал в педивикии про mock. получается что самый нижний уровень API им всё равно не протестировать? или есть возможность заmockить (через LD_PRELOAD скажем) определённые вызовы к glibc

1. DZhon 22.09.2011 06:43

Получается, что через LD_PRELOAD в рантайме, ага.
В шиндошс как-то так:
http://stackoverflow.com/questions/11659...
Ну и в прыщах можно тоже с макросами. Но я их боюсь. Они убивают моих двоюродных братьев.

2. analizerDZhon /1 22.09.2011 06:46 mcabber

макросы не убивают людей. я убиваю... тех кто их использует.

3. analizerDZhon /1 22.09.2011 06:48 mcabber

не надо с макросами. для этого LD_PRELOAD есть, а в винде — хуки.

4. DZhonanalizer /3 22.09.2011 06:54

Да, но нет единообразия: одно в rt, другое в ct.

5. analizeranalizer /3 23.09.2011 02:51 mcabber

макросы будут выполнять подстановку функций вне зависимости от области видимости символов из glibc, т.е. будут ломать программу. а вот написать функцию из glibc в либе, либу заLD_PRELOADить и прописать чтобы эта функция в зависимости от бэктрэйса и параметров возвращала фиктивное значение или же вызывала символ из glibc, загруженный по dlsym — уже качественно новый уровень. остаётся правда проблема, если твоя программа статически линкует glibc, но это уже половые трудности отдельно взятых личностей

Do you really want to delete ?