[Refactoring] better specs (shared_example + it_should_behave_like)
[Refactoring] rubocop
[Refactoring] shorter update_value (but with eval)