From 1aa2ecadf0c09823422cea31b86dca262430b1f5 Mon Sep 17 00:00:00 2001 From: Shawn Pearce Date: Thu, 28 Nov 2013 18:06:12 -0800 Subject: [PATCH] Add test for reply quoting in wikify() Change-Id: I273948bb67aa8069f4cbafea441ca27e8f70779f --- .../client/SafeHtml_WikifyQuoteTest.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 gerrit-gwtexpui/src/test/java/com/google/gwtexpui/safehtml/client/SafeHtml_WikifyQuoteTest.java diff --git a/gerrit-gwtexpui/src/test/java/com/google/gwtexpui/safehtml/client/SafeHtml_WikifyQuoteTest.java b/gerrit-gwtexpui/src/test/java/com/google/gwtexpui/safehtml/client/SafeHtml_WikifyQuoteTest.java new file mode 100644 index 0000000000..d6fba26de4 --- /dev/null +++ b/gerrit-gwtexpui/src/test/java/com/google/gwtexpui/safehtml/client/SafeHtml_WikifyQuoteTest.java @@ -0,0 +1,65 @@ +// Copyright (C) 2013 The Android Open Source Project +// +// 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 com.google.gwtexpui.safehtml.client; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotSame; + +public class SafeHtml_WikifyQuoteTest { + private static final String B = "

"; + private static final String E = "
"; + + private static String quote(String raw) { + return B + raw + E; + } + + @Test + public void testQuote1() { + final SafeHtml o = html("> I'm happy\n > with quotes!\n\nSee above."); + final SafeHtml n = o.wikify(); + assertNotSame(o, n); + assertEquals( + quote("I'm happy\nwith quotes!") + + "

See above.

", + n.asString()); + } + + @Test + public void testQuote2() { + final SafeHtml o = html("See this said:\n\n > a quoted\n > string block\n\nOK?"); + final SafeHtml n = o.wikify(); + assertNotSame(o, n); + assertEquals( + "

See this said:

" + + quote("a quoted\nstring block") + + "

OK?

", + n.asString()); + } + + @Test + public void testNestedQuotes1() { + final SafeHtml o = html(" > > prior\n > \n > next\n"); + final SafeHtml n = o.wikify(); + assertEquals( + quote(quote("prior") + "next\n"), + n.asString()); + } + + private static SafeHtml html(String text) { + return new SafeHtmlBuilder().append(text).toSafeHtml(); + } +}