public void FindMatches_SingleMatch()
        {
            const string word         = "test";
            const byte   searchTypeId = (byte)StaticData.SearchType.Equals;
            const byte   severity     = 2;
            const byte   wordTypeId   = (byte)StaticData.WordType.Vulgarity;

            //arrange
            _badWordCache.SetupGet(x => x.Words).Returns(new List <WordModel>
            {
                new WordModel
                {
                    Word         = word,
                    SearchTypeId = searchTypeId,
                    Severity     = severity,
                    WordTypeId   = wordTypeId
                }
            });

            User user = new User();

            //act
            var result = _mainHelper.FindMatches($"this is a {word}", user);

            //assert
            AssertWithMessage.AreEqual(result.Count(), 1, "item count");
            var item = result.First();

            AssertWithMessage.AreEqual(item.Occurrences, 1, nameof(item.Occurrences));
            AssertWithMessage.AreEqual(item.Word, word, nameof(item.Word));
            AssertWithMessage.AreEqual(item.Severity, severity, nameof(item.Severity));
            AssertWithMessage.AreEqual(item.WordTypeId, wordTypeId, nameof(item.WordTypeId));
        }