Package org.junit.tests.assertion

Source Code of org.junit.tests.assertion.ComparisonFailureTest

package org.junit.tests.assertion;

import static org.junit.Assert.assertEquals;

import java.util.Arrays;
import java.util.Collection;

import org.junit.ComparisonFailure;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;

@RunWith(Parameterized.class)
public class ComparisonFailureTest {
   
  private String expected, actual, message;
 
  public ComparisonFailureTest(String e, String a, String m) {
    expected = e;
    actual = a;
    message = m;
  }
 
  @Parameters(name = "compact-msg-{index}, exp=\"{1}\"")
  public static Collection<Object[]> data() {
    return Arrays.asList(new Object[][] {
      // simple base case
      { "a", "b", "expected:<[a]> but was:<[b]>" },
       
      // common prefix
      { "ba", "bc", "expected:<b[a]> but was:<b[c]>" },
       
      // common suffix
      { "ab", "cb", "expected:<[a]b> but was:<[c]b>" },
       
      // common pre and suffix
      { "abc", "adc", "expected:<a[b]c> but was:<a[d]c>" },
     
      // expected is subset of actual
      { "ab", "abc", "expected:<ab[]> but was:<ab[c]>" },

      // expected is superset of actual
      { "abc", "ab", "expected:<ab[c]> but was:<ab[]>" },
     
      // overlapping matches.
      { "abc", "abbc", "expected:<ab[]c> but was:<ab[b]c>" },

      // long prefix yielding "..."
      { "01234567890123456789PRE:hello:POST",
        "01234567890123456789PRE:world:POST",
        "expected:<...4567890123456789PRE:[hello]:POST> but was:<...4567890123456789PRE:[world]:POST>" },
         
      // long suffix  yielding "..."
      { "PRE:hello:01234567890123456789POST",
        "PRE:world:01234567890123456789POST",
        "expected:<PRE:[hello]:0123456789012345678...> but was:<PRE:[world]:0123456789012345678...>" 
      },
         
      // bug609972
      { "S&P500", "0", "expected:<[S&P50]0> but was:<[]0>" },
     
      // empty expected string
      { "", "a", "expected:<[]> but was:<[a]>" },

      // empty actual string
      { "a", "", "expected:<[a]> but was:<[]>" }

    })
  }

  @Test
  public void compactFailureMessage() {
    ComparisonFailure failure = new ComparisonFailure("", expected, actual);
    assertEquals(message, failure.getMessage());
  }
 
}
TOP

Related Classes of org.junit.tests.assertion.ComparisonFailureTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.