Ejemplo n.º 1
0
        public void Encode_ShouldEncodeCorrectly()
        {
            var encoderMock = new Mock <IDerAsnEncoder>();
            var sequence    = new DerAsnSet(new DerAsnType[]
            {
                new DerAsnNull(),
                new DerAsnObjectIdentifier(1, 2, 840, 113549, 1, 1, 1),
                new DerAsnNull()
            });

            sequence.Encode(encoderMock.Object);

            encoderMock.Verify(x => x.Encode(It.IsAny <DerAsnType>()), Times.Exactly(3));
            encoderMock.Verify(x => x.Encode(It.IsAny <DerAsnNull>()), Times.Exactly(2));
            encoderMock.Verify(x => x.Encode(It.IsAny <DerAsnObjectIdentifier>()), Times.Once);
        }
Ejemplo n.º 2
0
        public void DerAsnSet_GetBytes_ShouldEncodeCorrectly()
        {
            var type = new DerAsnSet(new DerAsnType[]
            {
                new DerAsnNull(),
                new DerAsnObjectIdentifier("1.2.840.113549.1.1.1"),
                new DerAsnNull()
            });

            var data = type.GetBytes();

            Assert.That((DerAsnTypeTag)data[0], Is.EqualTo(DerAsnTypeTag.Set));
            Assert.That(data[1], Is.EqualTo(0x0F));
            Assert.That(data.Skip(2).ToArray(), Is.EqualTo(new byte[]
            {
                0x05, 0x00,
                0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01,
                0x05, 0x00
            }));
        }
Ejemplo n.º 3
0
        public void ValueConstructor_ShouldSetIdentifier()
        {
            var sequence = new DerAsnSet(Array.Empty <DerAsnType>());

            Assert.That(sequence.Identifier, Is.EqualTo(DerAsnIdentifiers.Constructed.Set));
        }