Please sign in to comment.
Fix bug causing inconsistent values for security group names
Prior to this commit, when SecurityGroups#ensure_group was called with a list of ports that there was not yet a security group for, the array of ports would get wrapped in `Set.new` twice; once in the body of #group_id and once in the body of #ensure_group. It turns out that, based on the implementation of #group_id, there are cases when you'd get back a different group_id when you converted the array to a set twice. So, e.g.: Zlib.crc32(Set.new([22,8140]).inspect) != Zlib.crc32(Set.new(Set.new([22,8140])).inspect) but... Zlib.crc32(Set.new([22,8080]).inspect) == Zlib.crc32(Set.new(Set.new([22,8080])).inspect) Good times. This commit tweaks the tests so that they would repro this issue, and also cleans up the handling of the calls to `Set.new` so as to fix the bug.
- Loading branch information...
Showing with 27 additions and 10 deletions.