private void CalculateMaximum(int[] maxLengths, DataRecord record)
 {
     for (int col = 0; col < record.ColumnCount; col++)
     {
         if (maxLengths[col] < record.Fields[col].Length)
             maxLengths[col] = record.Fields[col].Length;
     }
 }
        private DataRecord CreateRecordFor(string csvLine)
        {
            var record = new DataRecord();

            foreach (var field in csvLine.Split(LINE_SEPARATOR))
                record.Add(field);

            return record;
        }
        public void MaxColumnLengthsFor_GivenOneDataRecordContainingOneField_ReturnsFieldLengthAsMaxColumnLength()
        {
            var dataRecord = new DataRecord();
            dataRecord.Add("field");

            List<DataRecord> dataRecords = new List<DataRecord> { dataRecord };

            var sut = new MaxConsoleColumnLengthsIdentifier();

            Assert.That(sut.MaxColumnLengthsOf(dataRecords), Is.EqualTo(new[] { "field".Length }), "max column lengths");
        }
Ejemplo n.º 4
0
        public void Equals_GivenTwoIdenticalDataRecordsForTwoPages_PagesAreEqual()
        {
            var dataRecord = new DataRecord();
            dataRecord.Add("Field");

            var page1 = CreatePage();
            page1.Add(dataRecord);

            var page2 = CreatePage();
            page2.Add(dataRecord);

            Assert.That(page1, Is.EqualTo(page2), "pages must be equal");
        }
Ejemplo n.º 5
0
        public void Create_GivenDataRecordCountAndPageSize_PageCountAndHeaderWillBeSet(int dataRecordCount, int pageSize, int expectedPageCount)
        {
            DataRecord header = new DataRecord();

            List<DataRecord> records = new List<DataRecord> { header };

            for (int i = 0; i < dataRecordCount; i++)
                records.Add(new DataRecord());

            var sut = new Table(records, pageSize);

            Assert.That(sut.PageCount, Is.EqualTo(expectedPageCount), "table page count");
            Assert.That(sut.Header, Is.EqualTo(header), "table header");
        }
        public void MaxColumnLengthsFor_GivenOneDataRecordContainingTwoFields_ReturnsMaxColumnLengthsForTwoColumns()
        {
            var dataRecord = new DataRecord();
            dataRecord.Add("field");
            dataRecord.Add("fieldxxx");

            List<DataRecord> dataRecords = new List<DataRecord> { dataRecord };

            var sut = new MaxConsoleColumnLengthsIdentifier();

            var expectedMaxLengths = new[] { "field".Length, "fieldxxx".Length };

            Assert.That(sut.MaxColumnLengthsOf(dataRecords), Is.EqualTo(expectedMaxLengths), "max column lengths");
        }
Ejemplo n.º 7
0
        public void Header_GivenDataRecordWithThreeFields_ReturnsCorrectlyFormattedHeader()
        {
            var dataRecord = new DataRecord();
            dataRecord.Add("headerField_1");
            dataRecord.Add("headerField_2");
            dataRecord.Add("headerField_3");

            var sut = CreatePage();
            sut.Add(dataRecord);

            var expectedHeader = "headerField_1|headerField_2|headerField_3|\n" +
                                 "-------------+-------------+-------------+";

            Assert.That(sut.Header(), Is.EqualTo(expectedHeader), "page header");
        }
        public void MaxColumnLengthsFor_GivenTwoDataRecordsEachContainingOneField_ReturnsMaxColumnLengthForOneField()
        {
            var dataRecord1 = new DataRecord();
            dataRecord1.Add("field");

            var dataRecord2 = new DataRecord();
            dataRecord2.Add("fieldxxx");

            List<DataRecord> dataRecords = new List<DataRecord> { dataRecord1, dataRecord2 };

            var sut = new MaxConsoleColumnLengthsIdentifier();

            var expectedMaxLengths = new[] { "fieldxxx".Length };

            Assert.That(sut.MaxColumnLengthsOf(dataRecords), Is.EqualTo(expectedMaxLengths), "max column lengths");
        }
Ejemplo n.º 9
0
        public void DataRecords_GivenTwoDataRecordsEachContainingThreeFields_ReturnsCorrectlyFormattedDataRecords()
        {
            var headerRecord = new DataRecord();
            headerRecord.Add("headerField_1");
            headerRecord.Add("headerField_2");
            headerRecord.Add("headerField_3");

            var dataRecord = new DataRecord();
            dataRecord.Add("field_1");
            dataRecord.Add("field_2");
            dataRecord.Add("field_3");

            var sut = CreatePage();
            sut.Add(headerRecord);
            sut.Add(dataRecord);

            var expectedDataRecords = NL + "field_1      |field_2      |field_3      |" + NL;

            Assert.That(sut.DataRecords, Is.EqualTo(expectedDataRecords), "page data records");
        }
Ejemplo n.º 10
0
        public void DataRecords_GivenOneDataRecordContaingEmptyField_TranslateEmptyFieldToSpaces()
        {
            var headerRecord = new DataRecord();
            headerRecord.Add("headerField_1");
            headerRecord.Add("headerField_2");
            headerRecord.Add("headerField_3");

            var dataRecord = new DataRecord();
            dataRecord.Add("field_1");
            dataRecord.Add(string.Empty);
            dataRecord.Add("field_3");

            Page sut = CreatePage();
            sut.Add(headerRecord);
            sut.Add(dataRecord);

            string expectedDataRecords = NL + "field_1      |             |field_3      |" + NL;

            Assert.That(sut.DataRecords, Is.EqualTo(expectedDataRecords), "page data records");
        }
        private List<DataRecord> ThreeDataRecords()
        {
            List<DataRecord> dataRecords = new List<DataRecord>();

            for (int i = 0; i < 3; i++)
            {
                DataRecord dr = new DataRecord();
                dr.Add("Field1");
                dr.Add("Field2");
                dr.Add("Field3");
                dataRecords.Add(dr);
            }

            return dataRecords;
        }
Ejemplo n.º 12
0
 private DataRecord RecordFor(int index = 0, string field = "field")
 {
     var record = new DataRecord();
     record.Add(field + index);
     record.Add(field + index);
     record.Add(field + index);
     return record;
 }
Ejemplo n.º 13
0
        private List<DataRecord> Create10Records()
        {
            DataRecord header = new DataRecord();

            List<DataRecord> records = new List<DataRecord> { header };

            for (int i = 1; i <= 10; i++)
                records.Add(RecordFor(i));
            return records;
        }
Ejemplo n.º 14
0
 public virtual void Add(DataRecord dataRecord)
 {
     dataRecords.Add(dataRecord);
 }
        private List<DataRecord> CreateExpectedRecords(int howMany)
        {
            List<DataRecord> expectedRecrods = new List<DataRecord>();

            for (int i = 0; i < howMany; i++)
            {
                var dataRecord = new DataRecord();
                dataRecord.Add("Field1");
                dataRecord.Add("Field2");
                dataRecord.Add("Field3");
                expectedRecrods.Add(dataRecord);
            }

            return expectedRecrods;
        }