public void AddOrUpdateNgramsToTable_Digrams_Verify(string tableName)
        {
            var ngrams = new List <NGram>
            {
                new NGram(10, new List <string> {
                    "small", "cat"
                }),
                new NGram(10, new List <string> {
                    "big", "cat"
                })
            };

            var commandText  = "aa";
            var commandText1 = "bb";

            var dataAccessMock = new Mock <IDataAccess>();

            var queryProviderMock = new Mock <IQueryProvider>();

            queryProviderMock.Setup(m => m.InsertOrUpdateNgramString(ngrams[0])).Returns(commandText);
            queryProviderMock.Setup(m => m.InsertOrUpdateNgramString(ngrams[1])).Returns(commandText1);

            var creator = new NgramsDataBaseCreator(dataAccessMock.Object, queryProviderMock.Object);

            creator.AddOrUpdateNgramsToTable(tableName, ngrams);

            dataAccessMock.Verify(m => m.ExecuteNonQueryDb(commandText), Times.Once);
            dataAccessMock.Verify(m => m.ExecuteNonQueryDb(commandText1), Times.Once);
        }
        public void AddOrUpdateNgramsToTable_NullNgrams_Verify(string tableName)
        {
            var dataAccessMock = new Mock <IDataAccess>();

            var queryProviderMock = new Mock <IQueryProvider>();

            var creator = new NgramsDataBaseCreator(dataAccessMock.Object, queryProviderMock.Object);

            creator.AddOrUpdateNgramsToTable(tableName, null);

            dataAccessMock.Verify(m => m.ExecuteNonQueryDb(It.IsAny <string>()), Times.Never);
        }