Exemple #1
0
        public void ManualFuzzingInput()
        {
            var value = new ManualFuzzingInput(new byte[] { 0x00 })
            {
                Description = "Test",
                Id          = Guid.NewGuid()
            };

            var ret = value.GetStream();

            CollectionAssert.AreEqual(new byte[] { 0x00 }, ret);

            // Regular constructor

            value = new ManualFuzzingInput(new byte[0]);
            ret   = value.GetStream();

            Assert.AreEqual(0, ret.Length);

            // Serialize

            var json  = SerializationHelper.SerializeToJson(value, true);
            var copy  = SerializationHelper.DeserializeFromJson <ManualFuzzingInput>(json);
            var copy2 = SerializationHelper.DeserializeFromJson <FuzzingInputBase>(json);

            Assert.IsTrue(copy.Equals(copy2));

            // Equals

            Assert.IsTrue(value.Equals(copy));
            Assert.IsTrue(value.Equals((object)copy));
            Assert.IsFalse(value.Equals(new object()));
            Assert.IsFalse(value.Equals((FuzzingInputBase) new FileFuzzingInput()));
            Assert.AreEqual(value.GetHashCode(), copy.GetHashCode());

            value.Id = Guid.NewGuid();
            Assert.AreNotEqual(value.GetHashCode(), copy.GetHashCode());
        }