コード例 #1
0
            public void ShouldReturnTrueWhenOtherAsObjectIsEqual()
            {
                var color = new ColorRGB(1, 2, 3);
                var other = new ColorRGB(1, 2, 3);

                Assert.True(color.Equals((object)other));
            }
コード例 #2
0
            public void ShouldReturnFalseWhenOtherAsObjectIsNotEqual()
            {
                var color = new ColorRGB(3, 2, 1);
                var other = new ColorRGB(1, 2, 3);

                Assert.False(color.Equals((object)other));
            }
コード例 #3
0
        public void TestCalculateShade_HasHitTrue()
        {
            //Arrange
            SceneTestInstance sceneTestInstance = new SceneTestInstance(winFrame);

            sceneTestInstance.SetValue(2);

            Point3D  lightPos   = new Point3D(100);
            ColorRGB lightColor = new ColorRGB(1, 0, 0);

            sceneTestInstance.AddLight(new Light(lightPos, lightColor));

            Point3D  testPoint = new Point3D(0, -100, 0);
            Vector3D normal    = new Vector3D(0, 1, 0);
            Plane    planeTest = new Plane(testPoint, normal);

            planeTest.SetMaterial(new Chalk(new ColorRGB(1, 0, 0)));
            sceneTestInstance.AddObject(planeTest);

            Tracer testTracer = new Tracer(sceneTestInstance);

            sceneTestInstance.SetTracer(testTracer);

            Mirror mirror = new Mirror();

            hitInfo.hasHit = true;
            //Act
            ColorRGB color = mirror.CalculateShade(hitInfo, sceneTestInstance);

            //Assert
            Assert.IsFalse(color.Equals(sceneTestInstance.GetBackgroundColor()));
        }
コード例 #4
0
        public void TestPowColor()
        {
            ColorRGB colorA      = new ColorRGB(2, 2, 2);
            double   fac         = 2.0;
            ColorRGB actualColor = colorA.Power(fac);
            ColorRGB expected    = new ColorRGB(4, 4, 4);

            Assert.IsTrue(actualColor.Equals(expected));
        }
コード例 #5
0
        public void TestDivColorScale()
        {
            ColorRGB colorA      = new ColorRGB(4, 4, 4);
            double   scale       = 2.0;
            ColorRGB actualColor = colorA / scale;
            ColorRGB expected    = new ColorRGB(2, 2, 2);

            Assert.IsTrue(actualColor.Equals(expected));
        }
コード例 #6
0
        public void TestProdColorScale()
        {
            ColorRGB colorA      = new ColorRGB(1, 1, 1);
            double   scale       = 2.0;
            ColorRGB actualColor = colorA * scale;
            ColorRGB expected    = new ColorRGB(2, 2, 2);

            Assert.IsTrue(actualColor.Equals(expected));
        }
コード例 #7
0
        public void TestProdColors()
        {
            ColorRGB colorA      = new ColorRGB(1, 1, 1);
            ColorRGB colorB      = new ColorRGB(1, 1, 1);
            ColorRGB actualColor = colorA * colorB;
            ColorRGB expected    = new ColorRGB(1, 1, 1);

            Assert.IsTrue(actualColor.Equals(expected));
        }
コード例 #8
0
        public void TestGetColor()
        {
            //Arrange
            ColorRGB expectedColor = intensity * lightColor;
            //Act
            ColorRGB actualColor = testAmbientLight.GetColor();

            //Assert
            Assert.IsTrue(expectedColor.Equals(actualColor));
        }
コード例 #9
0
ファイル: FlatTest.cs プロジェクト: obimmatimothy/raytracer
        public void TestCalculateShade_DefaultColor()
        {
            //Arrange
            Flat testFlat = new Flat();
            //Act
            ColorRGB actualColor = testFlat.CalculateShade(null);

            //Assert
            Assert.IsTrue(actualColor.Equals(Config.WHITE));
        }
コード例 #10
0
ファイル: FlatTest.cs プロジェクト: obimmatimothy/raytracer
        public void TestCalculateShade_CustomColor()
        {
            //Arrange
            Flat testFlat = new Flat(new ColorRGB(0.5));
            //Act
            ColorRGB expectedColor = new ColorRGB(0.5);
            ColorRGB actualColor   = testFlat.CalculateShade(null);

            //Assert
            Assert.IsTrue(actualColor.Equals(expectedColor));
        }
コード例 #11
0
        public void TestCalculateShade_HasHitFalse()
        {
            //Arrange
            Scene  scene  = new Scene(winFrame);
            Mirror mirror = new Mirror();

            hitInfo.hasHit = false;
            //Act
            ColorRGB color = mirror.CalculateShade(hitInfo, scene);

            //Assert
            Assert.IsTrue(color.Equals(scene.GetBackgroundColor()));
        }
コード例 #12
0
        public void TestGetColor()
        {
            //Arrange
            HitInfo hitInfo  = new HitInfo();
            Point3D hitPoint = new Point3D(0);

            hitInfo.hitPoint = hitPoint;

            ColorRGB expectedColor = (100.0 / lightPosition.GetDistance(hitPoint)) * lightColor * intensity;
            //Act
            ColorRGB actualColor = testLight.GetColor(hitInfo);

            //Assert
            Assert.IsTrue(actualColor.Equals(expectedColor));
        }
コード例 #13
0
            public void ShouldReturnFalseWhenOtherAsObjectIsNull()
            {
                var color = new ColorRGB(1, 2, 3);

                Assert.False(color.Equals((object)null));
            }