public void TestBuildsDecimalColumnParserWithConfiguredPrecisionAndScale()
        {
            //--Arrange
            var tableMap        = new PurchaseMap();
            var mergeSerializer = new JsonMergeSerializer <Purchase>(tableMap);

            //--Act
            var parser = mergeSerializer.BuildColumnParser(tableMap[x => x.Cost]);

            //--Assert
            StringAssert.StartsWith("[Cost] decimal(10,2) '$._", parser);
        }
        public void TestBuildsStringColumnParserWithConfiguredLength()
        {
            //--Arrange
            var tableMap        = new PurchaseMap();
            var mergeSerializer = new JsonMergeSerializer <Purchase>(tableMap);

            //--Act
            var parser = mergeSerializer.BuildColumnParser(tableMap[x => x.Name]);

            //--Assert
            StringAssert.StartsWith("[Name] nvarchar(20) '$._", parser);
        }
        public void TestBuildsBinaryColumnParserWithConfiguredLength()
        {
            //--Arrange
            var tableMap        = new StoredFileMap();
            var mergeSerializer = new JsonMergeSerializer <StoredFile>(tableMap);

            //--Act
            var parser = mergeSerializer.BuildColumnParser(tableMap[x => x.FileBytes]);

            //--Assert
            StringAssert.StartsWith("[FileBytes] nvarchar(max) '$._", parser);
        }
        public void TestBuildsStringColumnParser()
        {
            //--Arrange
            var tableMap        = new SuperEmployeeMap();
            var mergeSerializer = new JsonMergeSerializer <SuperEmployee>(tableMap);

            //--Act
            var parser = mergeSerializer.BuildColumnParser(tableMap[x => x.SomeAwesomeFieldA]);

            //--Assert
            StringAssert.StartsWith("[SomeAwesomeFieldA] nvarchar(max) '$._", parser);
        }