public void ConvertFromBinaryStreamToTradeRecords()
        {
            List <TradeRecord> trades = new List <TradeRecord>();

            trades.Add(new TradeRecord {
                id = 1, account = 1, volume = 1, comment = "Test1"
            });
            trades.Add(new TradeRecord {
                id = 2, account = 2, volume = 2, comment = "Test2"
            });
            trades.Add(new TradeRecord {
                id = 3, account = 3, volume = 3, comment = "Test3"
            });
            trades.Add(new TradeRecord {
                id = 4, account = 4, volume = 4, comment = "Test4"
            });

            WriteToFile(trades);
            var         deserializator = new BinaryTradeRecordDeserializator(File.OpenRead(FILE_BINARY_PATH));
            TradeRecord trade;
            int         i = 0;

            while (!deserializator.IsDone())
            {
                trade = deserializator.GetNextItem();
                if (!trades.Contains(trade))
                {
                    Assert.Fail("Wrong deserializate file!");
                }
                i++;
            }
            Assert.AreEqual(i, trades.Count);
            deserializator.Dispose();
        }
        public void ConvertFromBinaryFileToCsv()
        {
            var deserializator = new BinaryTradeRecordDeserializator(File.OpenRead(FILE_BINARY_PATH));
            var serializator   = new CsvTradeRecordSerializator(File.OpenWrite(FILE_CSV_PATH));
            var converter      = new TradeRecordConverter(serializator, deserializator);

            converter.Convert();

            var    reader = new StreamReader(File.OpenRead(FILE_CSV_PATH));
            string line;
            int    countCsvRecord = 0;

            while (!reader.EndOfStream)
            {
                line = reader.ReadLine();
                if (!tradeStrings.Contains(line))
                {
                    Assert.Fail("Wrong serializate file!");
                }
                countCsvRecord++;
            }
            reader.Dispose();
            Assert.AreEqual(countCsvRecord, trades.Count);
        }