The signature of a Clojure when-let is "(when-let bindings & body)", and the following statement comprises the "bindings => binding-form test" part:
So the test is simply the "(+ 1 2 3 4)" part, which in clojure is considered "logical true". Have a read of the Clojure Docs for 'if' to learn about what is considered "logical true" and "logical false", which should help understand why the 'when-let' statement in that blog post behaves as it does.
As an aside, for reference can you link to the blog post you speak of please?
I just wanted to add a practical example in case this post shows up in a Google search for when-let
Lets say you have a function that takes a map.
If the passed in map has the key :username you want to do something with it. Otherwise you can return nil or do something else
If you want to return nil then use when-let if you want to do something else use if-let
Exercise for the reader:
1) if the map has the :username key return a greeting with the name, otherwise return a generic greeting
2) same as 1 except return nil if missing
These forms prevent repetition to make your code look cleaner.
Exercise 3: refactor this code
`(when (:count state-map) (let [count (:count state-map)] (str "count is :" count)))`
When all you have is a hammer, everything looks like a thumb.