this post was submitted on 30 Jan 2026
701 points (97.4% liked)

Programmer Humor

28973 readers
1155 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] jjjalljs@ttrpg.network 8 points 19 hours ago (2 children)

with patch("some_file.requests.get", side_effect=SomeException("oh no")):
  result = func_using_requests()

Though not every language makes mocking as easy, and multiple responsibilities in a single function can quickly get messy.

[–] wpb@lemmy.world 1 points 1 hour ago* (last edited 1 hour ago)

Quickest way to get a test suite so tightly coupled to structure rather than behavior that even just looking at the tests wrong makes them fail. But technically you do get test coverage I guess. Goodhart's law in action.

[–] Tamo240@programming.dev 5 points 17 hours ago (1 children)

Oh I'm fully aware that python lets you cheat dependency injection with patch, its one of the many things python teaches developers to do wrong, which leads them to be unable to use any other language.

[–] jjjalljs@ttrpg.network 1 points 15 hours ago (1 children)

I vaguely remember Java also has mocking libraries, as does JavaScript. (Though JavaScript isn't a language I'd hold up as the ideal.)

[–] Tamo240@programming.dev 1 points 14 hours ago (1 children)

While my experience is mostly C++, I assume these mocking libraries are similar in allowing you to create a class that can report it's own usage, and allow for arbitrary returns values and side effects, which is incredibly useful, especially in conjunction with dependency injection.

What patch lets you do is directly overwrite the functionality of private member functions on the fly, which if Java/JavaScript can do I'd love to know, I thought this was a uniquely Pythonic magic.

[–] jjjalljs@ttrpg.network 1 points 9 hours ago

Javascript has mocking with jest: https://jestjs.io/docs/mock-functions

There's an example there of mocking our axios (a common library for network requests, a la python requests)

It's been a long time since I've used java, but mockito exists: https://site.mockito.org/javadoc/current/org/mockito/Mockito.html#2

(Usage note for anyone unfamiliar, but despite the name java and JavaScript are radically different languages.)