Пример #1
0
            public void For4ShouldReturn3()
            {
                var polynomial = new Polynomials.BinaryPolynomial("100");
                var expecting  = 3;

                polynomial.Degree.Should().Be(expecting);
            }
Пример #2
0
            public void For3ShouldBe11()
            {
                var a         = new Polynomials.BinaryPolynomial(3);
                var expecting = "11";

                a.ToString().Should().Be(expecting);
            }
Пример #3
0
            public void ForNullPolynomialShouldReturn1()
            {
                var polynomial = new Polynomials.BinaryPolynomial();
                var expecting  = 0;

                polynomial.Degree.Should().Be(expecting);
            }
Пример #4
0
            public void GetValue()
            {
                var a         = new Polynomials.BinaryPolynomial("1011");
                var expecting = true;

                a[2].Should().Be(expecting);
            }
Пример #5
0
            public void SetValue()
            {
                var a = new Polynomials.BinaryPolynomial("1000");

                a[2] = true;
                a[2].Should().BeTrue();
            }
Пример #6
0
            public void BasicEquals()
            {
                var a = new Polynomials.BinaryPolynomial("101011");
                var b = new Polynomials.BinaryPolynomial("101011");

                a.Equals(b).Should().BeTrue();
            }
Пример #7
0
            public void Generate()
            {
                var a   = new Polynomials.BinaryPolynomial("10110011");
                var crc = Polynomials.CrcAlgorithm.GenerateCrc(a);

                crc.Should().Be(new Polynomials.BinaryPolynomial("101100111000"));
            }
Пример #8
0
            public void ForNullPolynomialEmpty()
            {
                var a         = new Polynomials.BinaryPolynomial();
                var expecting = "0";

                a.ToString().Should().Be(expecting);
            }
Пример #9
0
            public void For3ShouldReturn2()
            {
                var polynomial = new Polynomials.BinaryPolynomial("11");
                var expecting  = 2;

                polynomial.Degree.Should().Be(expecting);
            }
Пример #10
0
            public void GetValue_indexGreaterThanDegree()
            {
                var a         = new Polynomials.BinaryPolynomial("10");
                var expecting = false;

                a[5].Should().Be(expecting);
            }
Пример #11
0
            public void RiseBy1()
            {
                var polynomial     = new Polynomials.BinaryPolynomial("1010");
                var riseDifference = 1;
                var expecting      = 20;

                polynomial.RiseDegree(riseDifference).Polynomial.Should().Be((uint)expecting);
            }
Пример #12
0
            public void RiseBy2()
            {
                var polynomial     = new Polynomials.BinaryPolynomial("11001");
                var riseDifference = 2;
                var expecting      = 100;

                polynomial.RiseDegree(riseDifference).Polynomial.Should().Be((uint)expecting);
            }
Пример #13
0
            public void DivisionTest2()
            {
                var a      = new Polynomials.BinaryPolynomial("111001010000");
                var b      = new Polynomials.BinaryPolynomial("11011");
                var result = Polynomials.BinaryPolynomial.Division(a, b);

                result.Item1.Should().Be(new Polynomials.BinaryPolynomial("10101100"));
                result.Item2.Should().Be(new Polynomials.BinaryPolynomial("100"));
            }
Пример #14
0
            public void SumTest3()
            {
                var a = new Polynomials.BinaryPolynomial("11");
                var b = new Polynomials.BinaryPolynomial("11");
                var expectingResult = new Polynomials.BinaryPolynomial("110");
                var sumResult       = a + b;

                sumResult.Should().Be(expectingResult);
            }
Пример #15
0
            public void SimpleSumTest()
            {
                var a = new Polynomials.BinaryPolynomial("100");
                var b = new Polynomials.BinaryPolynomial("  1");
                var expectingResult = new Polynomials.BinaryPolynomial("101");
                var sumResult       = a ^ b;

                sumResult.Should().Be(expectingResult);
            }
Пример #16
0
            public void RightPolynomialHasGreaterDegree()
            {
                var a = new Polynomials.BinaryPolynomial("   100");
                var b = new Polynomials.BinaryPolynomial("110101");
                var expectingResult = new Polynomials.BinaryPolynomial("110001");
                var xorResult       = a ^ b;

                xorResult.Should().Be(expectingResult);
            }
Пример #17
0
            public void SimpleXorTest()
            {
                var a = new Polynomials.BinaryPolynomial("101011");
                var b = new Polynomials.BinaryPolynomial("   110");
                var expectingResult = new Polynomials.BinaryPolynomial("101101");
                var xorResult       = a ^ b;

                xorResult.Should().Be(expectingResult);
            }
Пример #18
0
            public void CopyNonEmpty()
            {
                var a         = new Polynomials.BinaryPolynomial("101011");
                var copy      = a.Copy();
                var expecting = new Polynomials.BinaryPolynomial("101011");

                expecting.Equals(copy).Should().BeTrue();
                object.ReferenceEquals(a, copy).Should().BeFalse();
            }
Пример #19
0
            public void WhenLargerThanMaximumDegreeThrowException()
            {
                Action act = () =>
                {
                    var newPolynomial = new Polynomials.BinaryPolynomial(
                        "1000000000000000000000000000000000000000000000");
                };

                act.ShouldThrow <Exception>();
            }
Пример #20
0
            public void ShouldThrowExceptionOnNegativeRiseDifference()
            {
                var    polynomial     = new Polynomials.BinaryPolynomial("10100");
                var    riseDifference = -5;
                Action act            = () =>
                {
                    var newPolynomial = polynomial.RiseDegree(riseDifference);
                };

                act.ShouldThrow <Exception>();
            }
Пример #21
0
            public void SuccessfullyConstructsFromStringWithExtra0AtBegining()
            {
                var a = new Polynomials.BinaryPolynomial("001001");

                a.Polynomial.Should().Be(9);
            }
Пример #22
0
            public void ShouldBeInvalid()
            {
                var crcPolynomial = new Polynomials.BinaryPolynomial("101100111001");

                Polynomials.CrcAlgorithm.IsCrcValid(crcPolynomial).Should().BeFalse();
            }
Пример #23
0
            public void SuccessfullyConstructsFromStringThatEndsWithZero()
            {
                var a = new Polynomials.BinaryPolynomial("10");

                a.Polynomial.Should().Be(2);
            }