System.Net.Http.Headers.ContentRangeHeaderValue.Equals C# (CSharp) Method

Equals() public method

public Equals ( object obj ) : bool
obj object
return bool
        public override bool Equals(object obj)
        {
            ContentRangeHeaderValue other = obj as ContentRangeHeaderValue;

            if (other == null)
            {
                return false;
            }

            return ((_from == other._from) && (_to == other._to) && (_length == other._length) &&
                string.Equals(_unit, other._unit, StringComparison.OrdinalIgnoreCase));
        }

Usage Example

        public void Equals_UseSameAndDifferentRanges_EqualOrNotEqualNoExceptions()
        {
            ContentRangeHeaderValue range1 = new ContentRangeHeaderValue(1, 2, 5);
            ContentRangeHeaderValue range2 = new ContentRangeHeaderValue(1, 2);
            ContentRangeHeaderValue range3 = new ContentRangeHeaderValue(5);
            ContentRangeHeaderValue range4 = new ContentRangeHeaderValue(1, 2, 5);
            range4.Unit = "BYTES";
            ContentRangeHeaderValue range5 = new ContentRangeHeaderValue(1, 2, 5);
            range5.Unit = "myunit";
            ContentRangeHeaderValue range6 = new ContentRangeHeaderValue(1, 3, 5);
            ContentRangeHeaderValue range7 = new ContentRangeHeaderValue(2, 2, 5);
            ContentRangeHeaderValue range8 = new ContentRangeHeaderValue(1, 2, 6);

            Assert.False(range1.Equals(null)); // "bytes 1-2/5 vs. <null>"
            Assert.False(range1.Equals(range2)); // "bytes 1-2/5 vs. bytes 1-2/*"
            Assert.False(range1.Equals(range3)); // "bytes 1-2/5 vs. bytes */5"
            Assert.False(range2.Equals(range3)); // "bytes 1-2/* vs. bytes */5"
            Assert.True(range1.Equals(range4)); // "bytes 1-2/5 vs. BYTES 1-2/5"
            Assert.True(range4.Equals(range1)); // "BYTES 1-2/5 vs. bytes 1-2/5"
            Assert.False(range1.Equals(range5)); // "bytes 1-2/5 vs. myunit 1-2/5"
            Assert.False(range1.Equals(range6)); // "bytes 1-2/5 vs. bytes 1-3/5"
            Assert.False(range1.Equals(range7)); // "bytes 1-2/5 vs. bytes 2-2/5"
            Assert.False(range1.Equals(range8)); // "bytes 1-2/5 vs. bytes 1-2/6"
        }