/// <summary>
        /// Validate the Image DeSerialize  for different test cases.
        /// </summary>
        /// <param name="nodeName">Differrent node name for different test cases.</param>
        /// <param name="expectedFileName">Expected file name.</param>
        /// <param name="level">Levels in the folder structure.</param>
        /// <param name="tileXValue">Tile X value.</param>
        /// <param name="tileYValue">Tile Y value.</param>
        /// <param name="format">Image format.</param>        
        public void ValidateDeserializeImageFilesForDifferentLevel(string nodeName, string expectedFileName, int level, int tileXValue, int tileYValue, ImageFormat format)
        {
            // Get Values from XML File
            string filePath = utilityObj.XmlUtil.GetTextValue(nodeName, Constants.InputFilePath);

            var imageTileSerializer = new ImageTileSerializer(expectedFileName, ImageFormat.Png);
            using (Bitmap bitmap = new Bitmap(filePath))
            {
                // Serialize the file.
                imageTileSerializer.Serialize(bitmap, level, tileXValue, tileYValue);

                string path = Path.Combine(Environment.CurrentDirectory, imageTileSerializer.GetFileName(level, tileXValue, tileYValue));
                Assert.IsTrue(File.Exists(path));

                using (Bitmap newBitmap = imageTileSerializer.Deserialize(level, tileXValue, tileYValue) as Bitmap)
                {
                    Assert.IsNotNull(newBitmap);
                    for (int x = 0; x < bitmap.Width; x++)
                    {
                        for (int y = 0; y < bitmap.Height; y++)
                        {
                            Assert.AreEqual(bitmap.GetPixel(x, y), newBitmap.GetPixel(x, y));
                        }
                    }
                }

                // Delete the file.
                File.Delete(path);
            }
        }