diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2021-02-06 18:46:10 +0200 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2021-02-06 18:46:10 +0200 |
| commit | fd6495ff061f19ee81d88bccda36736af2ed70ee (patch) | |
| tree | d15cf6c6b388824570023c2600198d07e96b0e59 /Software/Visual_Studio | |
| parent | 372217f9a68cb8b2be81497f8c86431e3583cb59 (diff) | |
| download | Tango-fd6495ff061f19ee81d88bccda36736af2ed70ee.tar.gz Tango-fd6495ff061f19ee81d88bccda36736af2ed70ee.zip | |
Light Inks Tester Improvements.
Diffstat (limited to 'Software/Visual_Studio')
| -rw-r--r-- | Software/Visual_Studio/Tango.ColorLib.LightInksTest.CLI/Program.cs | 95 |
1 files changed, 43 insertions, 52 deletions
diff --git a/Software/Visual_Studio/Tango.ColorLib.LightInksTest.CLI/Program.cs b/Software/Visual_Studio/Tango.ColorLib.LightInksTest.CLI/Program.cs index 14506153d..250ab4d93 100644 --- a/Software/Visual_Studio/Tango.ColorLib.LightInksTest.CLI/Program.cs +++ b/Software/Visual_Studio/Tango.ColorLib.LightInksTest.CLI/Program.cs @@ -17,108 +17,94 @@ namespace Tango.ColorLib.LightInksTest.CLI static void Main(string[] args) { ColorLibConnector connector = new ColorLibConnector(); - + //Stopwatch watch = new Stopwatch(); //watch.Start(); Console.WriteLine(); //Input RGB [127, 131, 201] Console.WriteLine("Test RGB with Light Inks, R=127, G=131, B=201"); - Console.WriteLine(); - ConversionInput input = CreateConversionInput( PMR.ColorLab.ColorSpace.Rgb, new double[3]{ 127, 131, 201 }, true); - ConversionOutput result = connector.Convert(input); + ConversionInput input = CreateConversionInput(PMR.ColorLab.ColorSpace.Rgb, new double[3] { 127, 131, 201 }, true); + ConversionOutput result = connector.Convert(input); IsTestPassed(result, new double[7] { 33.74, 31.39, 0, 0, 0, 0, 5 }); //Console.WriteLine($"Result Convert RGB with LightInk flag TRUE result:\n{result.ToJsonString()}"); Console.WriteLine("Test RGB R=127, G=131, B=201"); - Console.WriteLine(); - input = CreateConversionInput( PMR.ColorLab.ColorSpace.Rgb, new double[3] { 127, 131, 201 }, false); + input = CreateConversionInput(PMR.ColorLab.ColorSpace.Rgb, new double[3] { 127, 131, 201 }, false); result = connector.Convert(input); IsTestPassed(result, new double[4] { 33.74, 31.39, 5, 0 }); Console.WriteLine("Test LAB with Light Inks L=55.39, A=40.56, B=56.69"); - Console.WriteLine(); - input = CreateConversionInput( PMR.ColorLab.ColorSpace.Lab, new double[3] { 55.39, 40.56, 56.69 }, true); + input = CreateConversionInput(PMR.ColorLab.ColorSpace.Lab, new double[3] { 55.39, 40.56, 56.69 }, true); result = connector.Convert(input); IsTestPassed(result, new double[7] { 1.62, 47.46, 143.16, 4.28, 0, 0, 0 }); Console.WriteLine("Test LAB L=55.39, A=40.56, B=56.69"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Lab, new double[3] { 55.39, 40.56, 56.69 }, false); result = connector.Convert(input); IsTestPassed(result, new double[4] { 1.62, 47.46, 143.16, 4.28 }); Console.WriteLine("Test LAB with Light Inks L=90.02, A=-16.27, B=27.12"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Lab, new double[3] { 90.02, -16.27, 27.12 }, true); result = connector.Convert(input); IsTestPassed(result, new double[7] { 11.31, 0, 32.60, 0, 0, 5, 0 }); Console.WriteLine("Test LAB L=90.02, A=-16.27, B=27.12"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Lab, new double[3] { 90.02, -16.27, 27.12 }, false); result = connector.Convert(input); IsTestPassed(result, new double[4] { 11.31, 0.5, 32.60, 0 }); ////// CATALOG ////////////////////////////////////////////////////////////////////////////////////////////////////// Console.WriteLine("Test CATALOG C=29.05, M=1, Y=0, K = 18.77"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Catalog, new double[4] { 29.05, 1, 0, 18.77 }, false); result = connector.Convert(input); IsTestPassed(result, new double[4] { 29.05, 1, 0, 18.77 }); Console.WriteLine("Test CATALOG with Light Inks, C=29.05, M=1, Y=0, K = 18.77"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Catalog, new double[4] { 29.05, 1, 0, 18.77 }, true); result = connector.Convert(input); IsTestPassed(result, new double[7] { 29.05, 0, 0, 18.77, 0, 10, 0 }); Console.WriteLine("Test CATALOG C=180, M=1, Y=3, K = 0"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Catalog, new double[4] { 180, 1, 3, 0 }, false); result = connector.Convert(input); IsTestPassed(result, new double[4] { 180, 1, 3, 0 }); Console.WriteLine("Test CATALOG with Light Inks, C=180, M=1, Y=3, K = 0"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Catalog, new double[4] { 180, 1, 3, 0 }, true); result = connector.Convert(input); IsTestPassed(result, new double[7] { 180, 1, 3, 0, 0, 0, 0 }); ///// VOLUME //////////////////////////////////////////////////////////////////////////////////////// Console.WriteLine("Test VOLUME with Light Inks, C=29.05, M=1, Y=0, K = 18.77"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Volume, new double[4] { 29.05, 1, 0, 18.77 }, true); result = connector.Convert(input); IsTestPassed(result, new double[7] { 29.05, 0, 0, 18.77, 0, 10, 0 }); Console.WriteLine("Test VOLUME, C=29.05, M=1, Y=0, K = 18.77"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Volume, new double[4] { 29.05, 1, 0, 18.77 }, false); result = connector.Convert(input); - IsTestPassed(result, new double[4] { 29.05, 1, 0, 18.77}); + IsTestPassed(result, new double[4] { 29.05, 1, 0, 18.77 }); Console.WriteLine("Test VOLUME with Light Inks, C=180, M=1, Y=3, K = 0"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Volume, new double[4] { 180, 1, 3, 0 }, true); result = connector.Convert(input); IsTestPassed(result, new double[7] { 180, 1, 3, 0, 0, 0, 0 }); Console.WriteLine("Test VOLUME , C=180, M=1, Y=3, K = 0"); - Console.WriteLine(); input = CreateConversionInput(PMR.ColorLab.ColorSpace.Volume, new double[4] { 180, 1, 3, 0 }, false); result = connector.Convert(input); - IsTestPassed(result, new double[4] { 180, 1, 3, 0}); + IsTestPassed(result, new double[4] { 180, 1, 3, 0 }); //watch.Stop(); //Console.WriteLine($"Processing completed after: {watch.ElapsedMilliseconds.ToString()} milliseconds."); Console.WriteLine(); - + Console.WriteLine("Press return to exit..."); Console.ReadLine(); } - public static ConversionInput CreateConversionInput( PMR.ColorLab.ColorSpace colorSpase, double[] values, bool useLightInks) + public static ConversionInput CreateConversionInput(PMR.ColorLab.ColorSpace colorSpase, double[] values, bool useLightInks) { ConversionInput input = new ConversionInput(); input.ThreadL = 90.5033; @@ -171,15 +157,15 @@ namespace Tango.ColorLib.LightInksTest.CLI CalibrationData = CreateCalibrationData(LiquidType.Black), MaxNanoliterPerCentimeter = 200, }); - if(colorSpase == PMR.ColorLab.ColorSpace.Volume) + if (colorSpase == PMR.ColorLab.ColorSpace.Volume) { int index = 0; - foreach(var liquid in input.InputCoordinates.InputLiquids) + foreach (var liquid in input.InputCoordinates.InputLiquids) { liquid.Volume = values[index++]; } } - if(useLightInks) + if (useLightInks) { input.InputCoordinates.InputLiquids.Add(new InputLiquid() { @@ -256,43 +242,48 @@ namespace Tango.ColorLib.LightInksTest.CLI public static bool IsTestPassed(ConversionOutput result, double[] expectedValues) { - bool passed = true; - ConsoleColor baseColor = Console.ForegroundColor; - if (result.SingleCoordinates.OutputLiquids.Count != expectedValues.Count()) + List<String> errors = new List<string>(); + + if (result.SingleCoordinates.OutputLiquids.Count != expectedValues.Length) { - Console.ForegroundColor = ConsoleColor.Red; - Console.WriteLine($"Test failed. Number of returned inks {result.SingleCoordinates.OutputLiquids.Count}, expected value {expectedValues.Count()}"); - Console.WriteLine(); - Console.ForegroundColor = baseColor; - return false; + errors.Add($"Number of returned inks {result.SingleCoordinates.OutputLiquids.Count}, expected value {expectedValues.Length}"); } - for(int index = 0; index < expectedValues.Count(); index++) + + if (errors.Count == 0) { - var liquid = result.SingleCoordinates.OutputLiquids[index]; - if(Math.Abs(liquid.Volume - expectedValues[index]) > 0.1) + for (int index = 0; index < expectedValues.Count(); index++) { - Console.ForegroundColor = ConsoleColor.Red; - Console.WriteLine($"Test failed. Output value={liquid.Volume} for type {liquid.LiquidType.ToJsonString()}, expected value={expectedValues[index].ToString()}"); - Console.WriteLine(); - Console.ForegroundColor = baseColor; - passed = false; + var liquid = result.SingleCoordinates.OutputLiquids[index]; + if (Math.Abs(liquid.Volume - expectedValues[index]) > 0.1) + { + errors.Add($"{liquid.LiquidType} value = {liquid.Volume}. expected value = {expectedValues[index]}"); + } } - else + } + + if (errors.Count > 0) + { + Console.ForegroundColor = ConsoleColor.Red; + + foreach (var error in errors) { - Console.ForegroundColor = ConsoleColor.Green; - Console.WriteLine($" Output value={liquid.Volume} for type {liquid.LiquidType.ToJsonString()}, expected value={expectedValues[index].ToString()}"); - Console.WriteLine(); + Console.WriteLine(error); } + + Console.ForegroundColor = ConsoleColor.Gray; + Console.WriteLine(); + + return false; } - if(passed) - { + else + { Console.ForegroundColor = ConsoleColor.Green; - Console.WriteLine($"Test passed."); + Console.WriteLine($"Passed."); + Console.ForegroundColor = ConsoleColor.Gray; Console.WriteLine(); + + return true; } - Console.ForegroundColor = baseColor; - return passed; - } } } |
