@Test
public final void testColorimetricColorStringInt() {

  logger.info("--------------------------------------------------------------------------------------------------------------");
  logger.info("Test method ColorimetricColor(String, int)");
  
  // =====================================================
  logger.info("  Test 1 : setting of all the attributes");
  
  //
  ColorimetricColor cResult = new ColorimetricColor("Rouge", 0); //$NON-NLS-1$
  
  ColorimetricColor cExpected = new ColorimetricColor();
  cExpected.idColor = 57;
  cExpected.hue = "ROUGE";
  cExpected.lightness = 1;
  cExpected.usualName = "ROUGE TRES CLAIR";
  cExpected.cleCoul = "R1";
  cExpected.redRGB = 254;
  cExpected.greenRGB = 230;
  cExpected.blueRGB = 219;
  cExpected.xScreen = 164;
  cExpected.yScreen = 164;
  
  compareColorimetricColor(cResult, cExpected);
  
  // =====================================================
  logger.info("  Test 2 :  with a non existing color : abcdef ");
  cResult = new ColorimetricColor("abcdef", 1); //$NON-NLS-1$
  cExpected = defaultColorimetric;
  compareColorimetricColor(cResult, cExpected);
  
  // =====================================================
  logger.info("  Test 3 :  with a non existing lightness : 2012841");
  cResult = new ColorimetricColor("Rouge", 2012841); //$NON-NLS-1$
  cExpected = defaultColorimetric;
  compareColorimetricColor(cResult, cExpected);
  
  // =====================================================
  logger.info("  Test 4 : different existing combination of hue and lightness");
  
  // Then, Test of the different combination of hue and lightness
  // In the three first wheels where lightness range from 1 to 7
  // 0 and 8 are allowed and setted respectively as 1 and 7
  logger.info("  Test 4.1 :  Rouge, Lightness = 0 => R1");
  cResult = new ColorimetricColor("Rouge", 0); //$NON-NLS-1$
  assertEquals("R1", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.2 :  Rouge, Lightness = 1 => R1");
  cResult = new ColorimetricColor("Rouge", 1); //$NON-NLS-1$
  assertEquals("R1", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.3 :  Rouge, Lightness = 5 => R5");
  cResult = new ColorimetricColor("Rouge", 5); //$NON-NLS-1$
  assertEquals("R5", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.4 :  Rouge, Lightness = 7 => R7");
  cResult = new ColorimetricColor("Rouge", 7); //$NON-NLS-1$
  assertEquals("R7", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.5 :  Rouge, Lightness = 8 => R8");
  cResult = new ColorimetricColor("Rouge", 8); //$NON-NLS-1$
  assertEquals("R7", cResult.getCleCoul()); //$NON-NLS-1$
  
  // Finally, test of the different allowed hue for white, grey and black.
  logger.info("  Test 4.6 :  Gris, Lightness = 0 => Bl0");
  cResult = new ColorimetricColor("Gris", 0); //$NON-NLS-1$
  assertEquals("Bl0", cResult.getCleCoul()); //$NON-NLS-1$
  compareColorimetricColor(cResult, new ColorimetricColor(85));
  
  logger.info("  Test 4.7 :  Gris, Lightness = 1 => G1");
  cResult = new ColorimetricColor("Gris", 1); //$NON-NLS-1$
  assertEquals("G1", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.8 :  Gris, Lightness = 5 => G5");
  cResult = new ColorimetricColor("Gris", 5); //$NON-NLS-1$
  assertEquals("G5", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.9 :  Gris, Lightness = 7 => G7");
  cResult = new ColorimetricColor("Gris", 7); //$NON-NLS-1$
  assertEquals("G7", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.10 :  Gris, Lightness = 8 => N8");
  cResult = new ColorimetricColor("Gris", 8); //$NON-NLS-1$
  assertEquals("N8", cResult.getCleCoul()); //$NON-NLS-1$
  compareColorimetricColor(cResult, new ColorimetricColor(86));
  
  logger.info("  Test 4.11 :  Noir, Lightness = 0 => Bl0");
  cResult = new ColorimetricColor("Noir", 0); //$NON-NLS-1$
  assertEquals("Bl0", cResult.getCleCoul()); //$NON-NLS-1$
  compareColorimetricColor(cResult, new ColorimetricColor(85));
  
  logger.info("  Test 4.12 :  Noir, Lightness = 1 => G1");
  cResult = new ColorimetricColor("Noir", 1); //$NON-NLS-1$
  assertEquals("G1", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.13 :  Noir, Lightness = 7 => G7");
  cResult = new ColorimetricColor("Noir", 7); //$NON-NLS-1$
  assertEquals("G7", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.14 :  Noir, Lightness = 8 => N8");
  cResult = new ColorimetricColor("Noir", 8); //$NON-NLS-1$
  assertEquals("N8", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.15 :  Blanc, Lightness = 0 => Bl0");
  cResult = new ColorimetricColor("Blanc", 0); //$NON-NLS-1$
  assertEquals("Bl0", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.16 :  Blanc, Lightness = 1 => G1");
  cResult = new ColorimetricColor("Blanc", 1); //$NON-NLS-1$
  assertEquals("G1", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.17 :  Blanc, Lightness = 7 => G7");
  cResult = new ColorimetricColor("Blanc", 7); //$NON-NLS-1$
  assertEquals("G7", cResult.getCleCoul()); //$NON-NLS-1$
  
  logger.info("  Test 4.18 :  Blanc, Lightness = 8 => N8");
  cResult = new ColorimetricColor("Blanc", 8); //$NON-NLS-1$
  assertEquals("N8", cResult.getCleCoul()); //$NON-NLS-1$
  compareColorimetricColor(cResult, new ColorimetricColor(86));
  
  // =====================================================
  logger.info("  Test 5 : different non existing combination of hue and lightness");
  
  logger.info("  Test 5.1 :  Rouge, Lightness = 9 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Rouge", 9); //$NON-NLS-1$
  compareColorimetricColor(cResult, defaultColorimetric);
  
  logger.info("  Test 5.2 :  Gris, Lightness = 9 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Gris", 9); //$NON-NLS-1$
  compareColorimetricColor(cResult, defaultColorimetric);
  
  logger.info("  Test 5.3 :  Noir, Lightness = 88888 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Noir", 88888); //$NON-NLS-1$
  compareColorimetricColor(cResult, defaultColorimetric);
  
  logger.info("  Test 5.5 :  Blanc, Lightness = 9 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Blanc", 9); //$NON-NLS-1$
  compareColorimetricColor(cResult, defaultColorimetric);
  
  logger.info("  Test 5.6 :  Mauve, Lightness = 5 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Mauve", 5); //$NON-NLS-1$
  compareColorimetricColor(cResult, defaultColorimetric);
  
  // =====================================================
  logger.info("  Test 6 : 2 particular combination of hue and lightness (calling constructor twice)");
  
  logger.info("  Test 6.1 :  Noir, Lightness = 8 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Noir", 8); //$NON-NLS-1$
  cExpected = new ColorimetricColor("Gris", 8); //$NON-NLS-1$
  compareColorimetricColor(cResult, cExpected);
  compareColorimetricColor(cResult, new ColorimetricColor(86));
  
  logger.info("  Test 6.2 :  Blanc, Lightness = 0 => Default ColorimetricColor");
  cResult = new ColorimetricColor("Blanc", 0); //$NON-NLS-1$
  cExpected = new ColorimetricColor("Gris", 0); //$NON-NLS-1$
  compareColorimetricColor(cResult, cExpected);
  compareColorimetricColor(cResult, new ColorimetricColor(85));
  
  // =====================================================
  logger.info("  Test 7 :  with a non existing lightness : null");
  cResult = new ColorimetricColor(null, 2012841); //$NON-NLS-1$
  cExpected = defaultColorimetric;
  compareColorimetricColor(cResult, cExpected);
}