public void ProgramPoint_Diff_Block()
        {
            var pp1 = new ProgramPoint(new TestBlock(), 1);
            var pp2 = new ProgramPoint(new TestBlock(), 1);

            pp2.Should().NotBe(pp1);
            pp2.GetHashCode().Should().NotBe(pp1.GetHashCode());
        }
        public void ProgramPoint_Diff_Offset()
        {
            var block = new TestBlock();
            var pp1   = new ProgramPoint(block, 1);
            var pp2   = new ProgramPoint(block, 2);

            pp2.Should().NotBe(pp1);
            pp2.GetHashCode().Should().NotBe(pp1.GetHashCode());
        }
        public void ProgramPoint_Equivalence()
        {
            var block = new TestBlock();
            var pp1   = new ProgramPoint(block, 1);
            var pp2   = new ProgramPoint(block, 1);

            pp2.Should().Be(pp1);
            pp2.GetHashCode().Should().Be(pp1.GetHashCode());
        }