< Summary

Information
Class: System.Net.Http.Headers.TransferCodingWithQualityHeaderValue
Assembly: System.Net.Http
File(s): D:\runner\runtime\src\libraries\System.Net.Http\src\System\Net\Http\Headers\TransferCodingWithQualityHeaderValue.cs
Line coverage
9%
Covered lines: 3
Uncovered lines: 30
Coverable lines: 33
Total lines: 65
Line coverage: 9%
Branch coverage
0%
Covered branches: 0
Total branches: 2
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Cyclomatic complexity NPath complexity Sequence coverage
.ctor()100%11100%
.ctor(...)100%110%
.ctor(...)100%110%
.ctor(...)100%110%
System.ICloneable.Clone()100%110%
Parse(...)100%110%
TryParse(...)0%220%

File(s)

D:\runner\runtime\src\libraries\System.Net.Http\src\System\Net\Http\Headers\TransferCodingWithQualityHeaderValue.cs

#LineLine coverage
 1// Licensed to the .NET Foundation under one or more agreements.
 2// The .NET Foundation licenses this file to you under the MIT license.
 3
 4using System;
 5using System.Diagnostics.CodeAnalysis;
 6
 7namespace System.Net.Http.Headers
 8{
 9    public sealed class TransferCodingWithQualityHeaderValue : TransferCodingHeaderValue, ICloneable
 10    {
 11        public double? Quality
 12        {
 013            get => HeaderUtilities.GetQuality((UnvalidatedObjectCollection<NameValueHeaderValue>)Parameters);
 014            set => HeaderUtilities.SetQuality((UnvalidatedObjectCollection<NameValueHeaderValue>)Parameters, value);
 15        }
 16
 9242617        internal TransferCodingWithQualityHeaderValue()
 9242618        {
 19            // Used by the parser to create a new instance of this type.
 9242620        }
 21
 22        public TransferCodingWithQualityHeaderValue(string value)
 023            : base(value)
 024        {
 025        }
 26
 27        public TransferCodingWithQualityHeaderValue(string value, double quality)
 028            : base(value)
 029        {
 030            Quality = quality;
 031        }
 32
 33        private TransferCodingWithQualityHeaderValue(TransferCodingWithQualityHeaderValue source)
 034            : base(source)
 035        {
 36            // No additional members to initialize here. This constructor is used by Clone().
 037        }
 38
 39        object ICloneable.Clone()
 040        {
 041            return new TransferCodingWithQualityHeaderValue(this);
 042        }
 43
 44        public static new TransferCodingWithQualityHeaderValue Parse(string input)
 045        {
 046            int index = 0;
 047            return (TransferCodingWithQualityHeaderValue)TransferCodingHeaderParser.SingleValueWithQualityParser
 048                .ParseValue(input, null, ref index);
 049        }
 50
 51        public static bool TryParse([NotNullWhen(true)] string? input, [NotNullWhen(true)] out TransferCodingWithQuality
 052        {
 053            int index = 0;
 054            parsedValue = null;
 55
 056            if (TransferCodingHeaderParser.SingleValueWithQualityParser.TryParseValue(
 057                input, null, ref index, out object? output))
 058            {
 059                parsedValue = (TransferCodingWithQualityHeaderValue)output!;
 060                return true;
 61            }
 062            return false;
 063        }
 64    }
 65}