public void DrawOneImage()
            {
                byte[] imageRawBytes;
                int    width, height;

                using (var context = new RenderContextForTest(300, 400))
                {
                    var styleRuleSet        = new StyleRuleSet();
                    var styleRuleSetBuilder = new StyleRuleSetBuilder(styleRuleSet);
                    styleRuleSetBuilder
                    .BorderImageSource(@"assets\images\button.png")
                    .BorderImageSlice((83, 54, 54, 54));

                    var primitiveRenderer = new BuiltinPrimitiveRenderer();

                    //build image and get the image primitive
                    var rule = styleRuleSet.GetRule <string>(GUIStyleName.BorderImageSource);
                    if (rule.primitive == null)
                    {
                        rule.primitive = new ImagePrimitive(rule.Value);
                    }
                    Assert.True(rule.primitive is ImagePrimitive);
                    var primitive = (ImagePrimitive)rule.primitive;

                    var mesh = new Mesh();
                    mesh.CommandBuffer.Add(DrawCommand.Default);
                    primitiveRenderer.SetImageMesh(mesh);
                    primitiveRenderer.DrawSlicedImage(primitive, new Rect(2, 2, primitive.Image.Width + 50, primitive.Image.Height + 100), styleRuleSet);

                    context.Clear();
                    context.DrawImageMesh(mesh);

                    imageRawBytes = context.Renderer.GetRawBackBuffer(out width, out height);
                }

                var    image = Util.CreateImage(imageRawBytes, width, height, flip: true);
                string expectedImageFilePath =
                    @"GraphicsImplementation\Builtin\images\BuiltinPrimitiveRendererFacts.DrawSlicedImage.DrawOneImage.png";

#if GenerateExpectedImages
                Util.SaveImage(image, Util.UnitTestRootDir + expectedImageFilePath);//generate expected image
                #else
                var expectedImage = Util.LoadImage(expectedImageFilePath);
                Assert.True(Util.CompareImage(expectedImage, image));
#endif
            }