public void Parse_InvalidAmountOfNumbers_InvalidDataException() { string stringToParse = "P3" + System.Environment.NewLine + "# This is a test image" + System.Environment.NewLine + "3 2" + System.Environment.NewLine + "255" + System.Environment.NewLine + "255 255 255 122 122 122 100 100 100 155 155 155 180 180 180 200 200 200 200 200"; PnmSerializer serializer = new PnmSerializer(); Assert.ThrowsException <InvalidDataException>(() => serializer.Parse(stringToParse)); }
public void Parse_PixelColourGreaterThanMaxRange_InvalidDataException() { string stringToParse = "P3" + System.Environment.NewLine + "# This is a test image" + System.Environment.NewLine + "3 2" + System.Environment.NewLine + "255" + System.Environment.NewLine + "300 255 255 122 122 122 100 100 100 155 155 155 180 180 180 200 200 200"; PnmSerializer serializer = new PnmSerializer(); Assert.ThrowsException <InvalidDataException>(() => serializer.Parse(stringToParse)); }
public void Parse_MaxRangeNotANumber_InvalidDataException() { string stringToParse = "P3" + System.Environment.NewLine + "# This is a test image" + System.Environment.NewLine + "3 2" + System.Environment.NewLine + "two-hundred-and-fifty-five" + System.Environment.NewLine + "255 255 255 122 122 122 100 100 100 155 155 155 180 180 180 200 200 200"; PnmSerializer serializer = new PnmSerializer(); Assert.ThrowsException <InvalidDataException>(() => serializer.Parse(stringToParse)); }
public void Parse_ValidImageSeveralMetadataLines_True() { string stringToParse = "P3" + System.Environment.NewLine + "# This is a test image" + System.Environment.NewLine + "# This is a second line" + System.Environment.NewLine + "3 2" + System.Environment.NewLine + "255" + System.Environment.NewLine + "255 255 255 122 122 122 100 100 100 155 155 155 180 180 180 200 200 200"; Pixel[,] pixels = new Pixel[2, 3]; pixels[0, 0] = new Pixel(255); pixels[0, 1] = new Pixel(122); pixels[0, 2] = new Pixel(100); pixels[1, 0] = new Pixel(155); pixels[1, 1] = new Pixel(180); pixels[1, 2] = new Pixel(200); Image imageToCompare = new Image("This is a test image" + System.Environment.NewLine + "This is a second line", 255, pixels); PnmSerializer serializer = new PnmSerializer(); Image image = serializer.Parse(stringToParse); Assert.AreEqual(imageToCompare, image); Assert.AreEqual(imageToCompare.Metadata, image.Metadata); }
public void Serialize_EmptyComment() { Image original = new Image("", 255, getValidPixelArray()); Image result; result = ser.Parse(ser.Serialize(original)); pringPixels(original); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); pringPixels(result); Assert.AreEqual(original.Metadata, result.Metadata); Assert.AreEqual(original.MaxRange, result.MaxRange); for (int i = 0; i < original.GetLength(0); i++) { for (int j = 0; j < original.GetLength(1); j++) { Assert.AreEqual(original[i, j], result[i, j]); } } }