public void CanUploadTable()
        {
            var manifestObject = GetJsonFile <DatabaseJobManifest>(_inputRoot, "database.manifest.mysql.json");
            var sql            = GetJsonFile <TargetSql>(_inputRoot, "mysql.target.ateam.json");
            var data           = CreateTable();

            var target = new MySqlWriter();

            target.UploadTable(connectionString,
                               sql.SetupTempDml,
                               manifestObject.manifest.tables[0],
                               data,
                               new List <string> {
                sql.UpdateFromTempDml, sql.ClearTempDml
            });

            var reader = new MySqlReader();

            // Only get the records what you have Updated in database on the basis of Ids {Primary Keys}
            var result = reader.GetData(connectionString, $"select * from ex8_db1.ATeam where Id in ({string.Join(",",data.AsEnumerable().Select(r => r.Field<dynamic>("Id")))})");

            result.Tables.Should().NotBeEmpty();
            result.Tables[0].Rows.Should().NotBeEmpty();
            result.Tables[0].Should().Equals(data);
        }
        public void Can_GetData_WithLimitAndOffset()
        {
            var builder = new MySqlBuilder();
            var query   = builder.SelectDmlPageBuilder($"Select * from ex8_db1.ATeam", "Id", 50000, 9);

            var target    = new MySqlReader();
            var dataTable = target.GetData(connectionString, query);

            dataTable.Tables.Should().NotBeEmpty();
            dataTable.Tables[0].Rows.Count.Should().Equals(50000);
            dataTable.Tables[0].Rows.Should().NotBeEmpty();
        }
        public void Can_GetData()
        {
            var target    = new MySqlReader();
            var dataTable = target.GetData(connectionString, $"Select * from ex8_db1.ATeam");

            int expectedOutput = target.ExecuteScalar <int>(connectionString, $"Select count(*) from ex8_db1.ATeam");
            int actualOutput   = dataTable.Tables[0].Rows.Count;

            dataTable.Tables.Should().NotBeEmpty();
            dataTable.Tables[0].Rows.Should().NotBeEmpty();
            expectedOutput.Should().Be(actualOutput);
        }