As someone new to the project, I found Session#run quite difficult to follow.
This is an attempt at making it easier to understand for other developers, mainly by splitting it out into shorter methods with expressive names. This also now feels more typical of the Ruby style which tends to prefer short methods.
I confirmed that this doesn't break any unit tests. (thanks for writing those, very helpful for refactoring)
Some of these are subjective style things, so let me know what you think! Definitely open to feedback.
As someone new to the project, I found
Session#run
quite difficult to follow.This is an attempt at making it easier to understand for other developers, mainly by splitting it out into shorter methods with expressive names. This also now feels more typical of the Ruby style which tends to prefer short methods.
I confirmed that this doesn't break any unit tests. (thanks for writing those, very helpful for refactoring)
Some of these are subjective style things, so let me know what you think! Definitely open to feedback.