예제 #1
0
    public void TryParseStrictList_WithSomeInvalidValues_ReturnsFalse()
    {
        var inputs = new[]
        {
            "",
            "text1",
            "text 1",
            "text2",
            "\"text 2\",",
            "text3;q=0.5",
            "text4;q=0.5, extra stuff",
            " text5 ; q = 0.50 ",
            "\r\n text6 ; q = 0.05 ",
            "text7,text8;q=0.5",
            " text9 , text10 ; q = 0.5 ",
        };

        Assert.False(StringWithQualityHeaderValue.TryParseStrictList(inputs, out var results));
    }
예제 #2
0
    public void TryParseStrictList_SetOfValidValueStrings_ParsedCorrectly()
    {
        var inputs = new[]
        {
            "",
            "text1",
            "text2,",
            "textA,textB",
            "text3;q=0.5",
            "text4;q=0.5,",
            " text5 ; q = 0.50 ",
            "\r\n text6 ; q = 0.05 ",
            "text7,text8;q=0.5",
            " text9 , text10 ; q = 0.5 ",
        };

        Assert.True(StringWithQualityHeaderValue.TryParseStrictList(inputs, out var results));

        var expectedResults = new[]
        {
            new StringWithQualityHeaderValue("text1"),
            new StringWithQualityHeaderValue("text2"),
            new StringWithQualityHeaderValue("textA"),
            new StringWithQualityHeaderValue("textB"),
            new StringWithQualityHeaderValue("text3", 0.5),
            new StringWithQualityHeaderValue("text4", 0.5),
            new StringWithQualityHeaderValue("text5", 0.5),
            new StringWithQualityHeaderValue("text6", 0.05),
            new StringWithQualityHeaderValue("text7"),
            new StringWithQualityHeaderValue("text8", 0.5),
            new StringWithQualityHeaderValue("text9"),
            new StringWithQualityHeaderValue("text10", 0.5),
        }.ToList();

        Assert.Equal(expectedResults, results);
    }