Example #1
0
        public void ShouldReadLittleEndianTraceHeader()
        {
            // Arrange
            var bytes = new byte[240];

            bytes[114] = 1; // 1
            bytes[115] = 2; // 512
            Subject.InlineNumberLocation = 101;
            bytes[100] = 1; // 1
            bytes[103] = 2; // 33,554,432
            Subject.CrosslineNumberLocation = 201;
            bytes[200] = 2; // 2
            bytes[203] = 2; // 33,554,432
            ITraceHeader traceHeader = null;

            // Act
            using (var stream = new MemoryStream(bytes))
                using (var reader = new BinaryReader(stream))
                    traceHeader = Subject.ReadTraceHeader(reader, true);

            // Assert
            Assert.AreEqual(513, traceHeader.SampleCount);
            Assert.AreEqual(33554433, traceHeader.InlineNumber);
            Assert.AreEqual(33554434, traceHeader.CrosslineNumber);
            Assert.AreEqual(33554434, traceHeader.TraceNumber);
        }
Example #2
0
        public void ShouldReadNumberOfSamplesFromByte115()
        {
            // Arrange
            Int16 expectedValue = 2345;

            // Act
            ITraceHeader result = Set16BitValueInBinaryStreamAndRead((sr, br) => sr.ReadTraceHeader(br), 115, expectedValue, false);

            // Assert
            Assert.AreEqual(expectedValue, result.SampleCount);
        }
Example #3
0
        public void ShouldReadInlineNumberFromSpecifiedByteLocation()
        {
            // Arrange
            Int32 expectedValue = Int16.MaxValue + 100;

            Subject.InlineNumberLocation = 123;

            // Act
            ITraceHeader result = Set32BitValueInBinaryStreamAndRead((sr, br) => sr.ReadTraceHeader(br), Subject.InlineNumberLocation, expectedValue);

            // Assert
            Assert.AreEqual(expectedValue, result.InlineNumber);
        }