Skip to content

Commit b78b5da

Browse files
committed
🐛 Fix SequenceSet[input] for a SequenceSet input
I'm surprised there was no test for this!
1 parent 92749e1 commit b78b5da

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

lib/net/imap/sequence_set.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ class << self
297297
# Use ::new to create a mutable or empty SequenceSet.
298298
def [](first, *rest)
299299
if rest.empty?
300-
if first.is_a?(SequenceSet) && set.frozen? && set.valid?
300+
if first.is_a?(SequenceSet) && first.frozen? && first.valid?
301301
first
302302
else
303303
new(first).validate.freeze

test/net/imap/test_sequence_set.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,11 @@ def compare_to_reference_set(nums, set, seqset)
103103
assert_raise DataFormatError do SequenceSet.new Set[1..20] end
104104
end
105105

106+
test ".[frozen SequenceSet] returns that SequenceSet" do
107+
frozen_seqset = SequenceSet[123..456]
108+
assert_same frozen_seqset, SequenceSet[frozen_seqset]
109+
end
110+
106111
test ".new, input may be empty" do
107112
assert_empty SequenceSet.new
108113
assert_empty SequenceSet.new []

0 commit comments

Comments
 (0)