public void ChromaticityFromCCT_WikipediaData(double expectedX, double expectedY, double cct)
    {
        // action
        var chromaticity = CCTConverter.GetChromaticityOfCCT(in cct);

        // assert
        var deltaComparer = new DoubleDeltaComparer(delta: 0.02);

        Assert.Equal(expectedX, chromaticity.x, deltaComparer);
        Assert.Equal(expectedY, chromaticity.y, deltaComparer);
    }
    public void CCTFromChromaticity_LindbloomData(double x, double y, double expectedCCT)
    {
        // arrange
        var chromaticity = new xyChromaticity(in x, in y);

        // action
        var cct = CCTConverter.GetCCTOfChromaticity(in chromaticity);

        // assert
        Debug.WriteLine($"CCT {cct} K (difference {Math.Abs(expectedCCT - cct)} K)");
        var deltaComparer = new DoubleDeltaComparer(delta: 624); // uses a different method (Robertsons) => very big differences

        Assert.Equal(expectedCCT, cct, deltaComparer);
    }
    public void CCTFromChromaticity_WikipediaData(double x, double y, double expectedCCT)
    {
        // arrange
        var chromaticity = new xyChromaticity(in x, in y);

        // action
        var cct = CCTConverter.GetCCTOfChromaticity(in chromaticity);

        // assert
        Debug.WriteLine($"CCT {cct} K (difference {Math.Abs(expectedCCT - cct)} K)");
        var deltaComparer = new DoubleDeltaComparer(delta: 66);

        Assert.Equal(expectedCCT, cct, deltaComparer);
    }
Beispiel #4
0
        public void ChromaticityFromCCT(double expectedX, double expectedY, double cct)
        {
            // arrange
            var approximation = new CCTConverter();

            // action
            xyChromaticityCoordinates chromaticity = approximation.GetChromaticityOfCCT(cct);

            // assert
            var deltaComparer = new DoubleDeltaComparer(0.02);
            Assert.That(chromaticity.x, Is.EqualTo(expectedX).Using(deltaComparer));
            Assert.That(chromaticity.y, Is.EqualTo(expectedY).Using(deltaComparer));
        }