Exemple #1
0
        public void TestExecutionFuzzingInput()
        {
            ExecutionFuzzingInput c = new ExecutionFuzzingInput("cmd.exe", "/C dir c:")
            {
            };

            string ret = Encoding.ASCII.GetString(c.GetStream());
        }
Exemple #2
0
        public void ExecutionFuzzingInput()
        {
            ExecutionFuzzingInput value;

            if (Environment.OSVersion.Platform == PlatformID.Unix)
            {
                value = new ExecutionFuzzingInput("bash", "-c \"echo Hello World\"")
                {
                    Description = "Test",
                    Id          = Guid.NewGuid()
                };
            }
            else
            {
                value = new ExecutionFuzzingInput("cmd", "/c echo Hello World")
                {
                    Description = "Test",
                    Id          = Guid.NewGuid()
                };
            }

            var ret = Encoding.ASCII.GetString(value.GetStream());

            Assert.AreEqual("Hello World", ret.Trim());

            // Regular constructor

            value = new ExecutionFuzzingInput()
            {
                FileName  = value.FileName,
                Arguments = value.Arguments
            };

            ret = Encoding.ASCII.GetString(value.GetStream());
            Assert.AreEqual("Hello World", ret.Trim());

            // Serialize

            var json  = SerializationHelper.SerializeToJson(value, true);
            var copy  = SerializationHelper.DeserializeFromJson <ExecutionFuzzingInput>(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());
        }