tests: Use buffers format when writing PPM files

Also change tests to use BGRA by default

Also change WritePPM to use BGRA format
diff --git a/tests/xglrenderframework.cpp b/tests/xglrenderframework.cpp
index b7b3742..22d3216 100644
--- a/tests/xglrenderframework.cpp
+++ b/tests/xglrenderframework.cpp
@@ -38,7 +38,7 @@
 {
     m_renderTargetCount = 1;
 
-    m_render_target_fmt = XGL_FMT_R8G8B8A8_UNORM;
+    m_render_target_fmt = XGL_FMT_B8G8R8A8_UNORM;
 
     m_depthStencilBinding.view = XGL_NULL_HANDLE;
 }
@@ -83,7 +83,7 @@
 {
     XGL_RESULT err;
 
-    m_render_target_fmt = XGL_FMT_R8G8B8A8_UNORM;
+    m_render_target_fmt = XGL_FMT_B8G8R8A8_UNORM;
 
     // create a raster state (solid, back-face culling)
     XGL_DYNAMIC_RS_STATE_CREATE_INFO raster = {};
@@ -383,7 +383,7 @@
         XGL_STRUCTURE_TYPE_COLOR_ATTACHMENT_VIEW_CREATE_INFO,
         XGL_NULL_HANDLE,
         obj(),
-        XGL_FMT_R8G8B8A8_UNORM,
+        XGL_FMT_B8G8R8A8_UNORM,
         0,
         0,
         1
@@ -805,7 +805,7 @@
 
     XGL_PIPELINE_CB_ATTACHMENT_STATE att = {};
     att.blendEnable = XGL_FALSE;
-    att.format = XGL_FMT_R8G8B8A8_UNORM;
+    att.format = XGL_FMT_B8G8R8A8_UNORM;
     att.channelWriteMask = 0xf;
     AddColorAttachment(0, &att);
 
diff --git a/tests/xgltestbinding.h b/tests/xgltestbinding.h
index a47b44a..676fcab 100644
--- a/tests/xgltestbinding.h
+++ b/tests/xgltestbinding.h
@@ -407,6 +407,7 @@
     XGL_IMAGE_SUBRESOURCE_RANGE subresource_range(XGL_IMAGE_ASPECT aspect) const { return subresource_range(create_info_, aspect); }
     XGL_EXTENT3D extent() const { return create_info_.extent; }
     XGL_EXTENT3D extent(uint32_t mip_level) const { return extent(create_info_.extent, mip_level); }
+    XGL_FORMAT format() const {return create_info_.format;}
 
     XGL_IMAGE_MEMORY_BARRIER image_memory_barrier(XGL_FLAGS output_mask, XGL_FLAGS input_mask,
                                                   XGL_IMAGE_LAYOUT old_layout,
diff --git a/tests/xgltestframework.cpp b/tests/xgltestframework.cpp
index fa648a3..7b83596 100644
--- a/tests/xgltestframework.cpp
+++ b/tests/xgltestframework.cpp
@@ -214,11 +214,27 @@
     file << 255 << "\n";
 
     for (y = 0; y < image->height(); y++) {
-        const char *row = ptr;
+        const int *row = (const int *) ptr;
+        int swapped;
 
-        for (x = 0; x < image->width(); x++) {
-            file.write(row, 3);
-            row += 4;
+        if (image->format() == XGL_FMT_B8G8R8A8_UNORM)
+        {
+            for (x = 0; x < image->width(); x++) {
+                swapped = (*row & 0xff00ff00) | (*row & 0x000000ff) << 16 | (*row & 0x00ff0000) >> 16;
+                file.write((char *) &swapped, 3);
+                row++;
+            }
+        }
+        else if (image->format() == XGL_FMT_R8G8B8A8_UNORM)
+        {
+            for (x = 0; x < image->width(); x++) {
+                file.write((char *) row, 3);
+                row++;
+            }
+        }
+        else {
+            printf("Unrecognized image format - will not write image files");
+            break;
         }
 
         ptr += sr_layout.rowPitch;