示例#1
0
        public void ImmutableClass()
        {
            var c = new FieldsSample.ImmutableClass(value: "value");

            TestValueAnalysis(c.Field, c.Field == null /*Expect:ConditionIsAlwaysTrueOrFalse[Flds]*/);
            c.Field.Should().Be("value");

            TestValueAnalysis(c.NullableField /*Expect:AssignNullToNotNullAttribute*/, c.NullableField == null);
            c.NullableField.Should().BeNull();

            // Here the implicit NotNull is wrong, because "UnknownNullabilityString" returned null:
            TestValueAnalysis(c.FieldWithUnknownValue, c.FieldWithUnknownValue == null /*Expect:ConditionIsAlwaysTrueOrFalse[Flds]*/);
            c.FieldWithUnknownValue.Should().BeNull();
        }