issue73: provide an example to serialise a java.util.Set as a sequence
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index c6441f1..07c8f14 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -8,7 +8,8 @@
 	<body>

           <release version="1.7" date="in Mercurial" description="development">

             <action dev="py4fun" type="add" issue="73" due-to="birnbuazn">

-                Provide sequence support for loading java.util.Set (2010-07-19)

+                Provide sequence support for loading java.util.Set. Also provide an example

+                to serialise a java.util.Set as a sequence. (2010-07-19)

             </action>

             <action dev="py4fun" type="add" issue="72" due-to="birnbuazn">

                 Support java.util.Collection as a parent for List and Set (2010-07-09)

diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue73/DumpSetAsSequenceExampleTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue73/DumpSetAsSequenceExampleTest.java
new file mode 100644
index 0000000..9afe840
--- /dev/null
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue73/DumpSetAsSequenceExampleTest.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2008-2010, http://code.google.com/p/snakeyaml/
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.yaml.snakeyaml.issues.issue73;
+
+import java.util.Set;
+import java.util.TreeSet;
+
+import junit.framework.TestCase;
+
+import org.yaml.snakeyaml.Dumper;
+import org.yaml.snakeyaml.DumperOptions;
+import org.yaml.snakeyaml.Loader;
+import org.yaml.snakeyaml.Util;
+import org.yaml.snakeyaml.Yaml;
+import org.yaml.snakeyaml.DumperOptions.FlowStyle;
+import org.yaml.snakeyaml.introspector.BeanAccess;
+import org.yaml.snakeyaml.representer.Representer;
+
+public class DumpSetAsSequenceExampleTest extends TestCase {
+
+    public void testDumpFlow() {
+        DumperOptions options = new DumperOptions();
+        options.setAllowReadOnlyProperties(true);
+        Yaml yaml = new Yaml(new Dumper(new SetRepresenter(), options));
+        String output = yaml.dump(createBlog());
+        // System.out.println(output);
+        assertEquals(Util.getLocalResource("issues/issue73-dump7.txt"), output);
+        //
+        check(output);
+    }
+
+    public void testDumpBlock() {
+        DumperOptions options = new DumperOptions();
+        options.setAllowReadOnlyProperties(true);
+        options.setDefaultFlowStyle(FlowStyle.BLOCK);
+        Yaml yaml = new Yaml(new Dumper(new SetRepresenter(), options));
+        String output = yaml.dump(createBlog());
+        // System.out.println(output);
+        assertEquals(Util.getLocalResource("issues/issue73-dump8.txt"), output);
+        //
+        check(output);
+    }
+
+    private class SetRepresenter extends Representer {
+        public SetRepresenter() {
+            this.multiRepresenters.remove(Set.class);
+        }
+    }
+
+    private Blog createBlog() {
+        Blog blog = new Blog("Test Me!");
+        blog.addPost(new Post("Title1", "text 1"));
+        blog.addPost(new Post("Title2", "text text 2"));
+        blog.numbers.add(19);
+        blog.numbers.add(17);
+        TreeSet<String> labels = new TreeSet<String>();
+        labels.add("Java");
+        labels.add("YAML");
+        labels.add("SnakeYAML");
+        blog.setLabels(labels);
+        return blog;
+    }
+
+    private void check(String doc) {
+        Loader loader = new Loader();
+        loader.setBeanAccess(BeanAccess.FIELD);
+        Yaml yamlLoader = new Yaml(loader);
+        Blog blog = (Blog) yamlLoader.load(doc);
+        assertEquals("Test Me!", blog.getName());
+        assertEquals(2, blog.numbers.size());
+        assertEquals(2, blog.getPosts().size());
+        for (Post post : blog.getPosts()) {
+            assertEquals(Post.class, post.getClass());
+        }
+    }
+}
diff --git a/src/test/resources/issues/issue73-dump7.txt b/src/test/resources/issues/issue73-dump7.txt
new file mode 100644
index 0000000..0d36c28
--- /dev/null
+++ b/src/test/resources/issues/issue73-dump7.txt
@@ -0,0 +1,8 @@
+!!org.yaml.snakeyaml.issues.issue73.Blog
+labels: [Java, SnakeYAML, YAML]
+name: Test Me!
+numbers: [19, 17]
+posts:
+- {text: text 1, title: Title1}
+- {text: text text 2, title: Title2}
+
diff --git a/src/test/resources/issues/issue73-dump8.txt b/src/test/resources/issues/issue73-dump8.txt
new file mode 100644
index 0000000..2b61b71
--- /dev/null
+++ b/src/test/resources/issues/issue73-dump8.txt
@@ -0,0 +1,15 @@
+!!org.yaml.snakeyaml.issues.issue73.Blog
+labels:
+- Java
+- SnakeYAML
+- YAML
+name: Test Me!
+numbers:
+- 19
+- 17
+posts:
+- text: text 1
+  title: Title1
+- text: text text 2
+  title: Title2
+