/
githubmirror
/
guava
Обзор
Документация
Войти
/
githubmirror
/
guava
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
guava-testlib/src/com/google/common/escape/testing/EscaperAsserts.java
112 строк
4 KB
cpovirk
Address places where [CheckedExceptionNotThrown](https://errorprone.info/bugpattern/CheckedExceptionNotThrown) *would* produce warnings if it were to operate on test code.
24 июн 2026, 23:48
24 июн 2026, 23:48
400af07
Код
Авторство
О чём код?
/* * Copyright (C) 2009 The Guava Authors * * 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.common.escape.testing; import static com.google.common.escape.Escapers.computeReplacement; import static org.junit.Assert.assertThrows; import com.google.common.annotations.GwtCompatible; import com.google.common.escape.CharEscaper; import com.google.common.escape.Escaper; import com.google.common.escape.UnicodeEscaper; import junit.framework.Assert; /** * Extra assert methods for testing Escaper implementations. * * @author David Beaumont * @since 15.0 */ @GwtCompatible public final class EscaperAsserts { private EscaperAsserts() {} /** * Asserts that an escaper behaves correctly with respect to null inputs. * * @param escaper the non-null escaper to test */ @SuppressWarnings("NullArgumentForNonNullParameter") // test of a bogus call public static void assertBasic(Escaper escaper) { // Escapers operate on characters: no characters, no escaping. Assert.assertEquals("", escaper.escape("")); // Assert that escapers throw null pointer exceptions. assertThrows(NullPointerException.class, () -> escaper.escape(null)); } /** * Asserts that an escaper escapes the given character into the expected string. * * @param escaper the non-null escaper to test * @param expected the expected output string * @param c the character to escape */ public static void assertEscaping(CharEscaper escaper, String expected, char c) { String escaped = computeReplacement(escaper, c); Assert.assertNotNull(escaped); Assert.assertEquals(expected, escaped); } /** * Asserts that a Unicode escaper escapes the given code point into the expected string. * * @param escaper the non-null escaper to test * @param expected the expected output string * @param cp the Unicode code point to escape */ public static void assertEscaping(UnicodeEscaper escaper, String expected, int cp) { String escaped = computeReplacement(escaper, cp); Assert.assertNotNull(escaped); Assert.assertEquals(expected, escaped); } /** * Asserts that an escaper does not escape the given character. * * @param escaper the non-null escaper to test * @param c the character to test */ public static void assertUnescaped(CharEscaper escaper, char c) { Assert.assertNull(computeReplacement(escaper, c)); } /** * Asserts that a Unicode escaper does not escape the given character. * * @param escaper the non-null escaper to test * @param cp the Unicode code point to test */ public static void assertUnescaped(UnicodeEscaper escaper, int cp) { Assert.assertNull(computeReplacement(escaper, cp)); } /** * Asserts that a Unicode escaper escapes the given hi/lo surrogate pair into the expected string. * * @param escaper the non-null escaper to test * @param expected the expected output string * @param hi the high surrogate pair character * @param lo the low surrogate pair character */ public static void assertUnicodeEscaping( UnicodeEscaper escaper, String expected, char hi, char lo) { int cp = Character.toCodePoint(hi, lo); String escaped = computeReplacement(escaper, cp); Assert.assertNotNull(escaped); Assert.assertEquals(expected, escaped); } }