Beispiel #1
0
        public void AssertKnowledgeIdentifierCaseInsensitiveEqualsAndGetHashCode(string input1, string input2, bool equals)
        {
            var value1 = new KnowledgeIdentifier(input1);
            var value2 = new KnowledgeIdentifier(input2);

            Assert.AreEqual(equals, value1.Equals(value2));
            Assert.AreEqual(equals, value1.GetHashCode() == value2.GetHashCode());
        }
 public static SuggestedKnowledgeDto From(string knowledgeIdentifier, string value)
 {
     return(new SuggestedKnowledgeDto()
     {
         KnowledgeIdentifier = KnowledgeIdentifier.From(knowledgeIdentifier),
         Values = new HashSet <KnowledgeValueDto>()
         {
             new KnowledgeValueDto()
             {
                 KnowledgeValue = KnowledgeValue.From(value)
             }
         }
     });
 }
Beispiel #3
0
        public static bool TryGetKnowledgeValues(this AnalyzerRequestDto analyzerRequestDto, KnowledgeIdentifier knowledgeIdentifier, out IEnumerable <KnowledgeValue> values)
        {
            var knowledge = analyzerRequestDto.Knowledge.FirstOrDefault(k => k.KnowledgeIdentifier == knowledgeIdentifier);

            if (knowledge == null)
            {
                values = null;
                return(false);
            }

            var knowledgeValues = knowledge.Values.Select(v => v.KnowledgeValue);

            if (knowledgeValues == null || !knowledgeValues.Any())
            {
                values = null;
                return(false);
            }

            values = knowledgeValues;
            return(true);
        }
Beispiel #4
0
        public static bool TryGetSingleKnowledgeValue(this AnalyzerRequestDto analyzerRequestDto, KnowledgeIdentifier knowledgeIdentifier, out KnowledgeValue value)
        {
            if (TryGetKnowledgeValues(analyzerRequestDto, knowledgeIdentifier, out var values))
            {
                value = values.SingleOrDefault();
                return(true);
            }

            value = null;
            return(false);
        }
Beispiel #5
0
        public void TestKnowledgeIdentifierInvalidFormat()
        {
            var ex = Assert.Throws <ArgumentException>(() => KnowledgeIdentifier.From("no-leading-hashtag"));

            Assert.AreEqual("The KnowledgeIdentifier has an invalid format: \"no-leading-hashtag\", Expected starting with #.", ex.Message);
        }
Beispiel #6
0
 public void TestEmptyKnowledgeIdentifierThrows(string input)
 {
     Assert.Throws <ArgumentNullException>(() => KnowledgeIdentifier.From(input));
 }