/* * Copyright 2016 Nokia Solutions and Networks * Licensed under the Apache License, Version 2.0, * see license.txt file for details. */ package org.rf.ide.core.testdata.text.write; import static org.assertj.core.api.Assertions.assertThat; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.rf.ide.core.test.helpers.ClassFieldCleaner; import org.rf.ide.core.test.helpers.ClassFieldCleaner.ForClean; import org.rf.ide.core.testdata.model.FilePosition; import org.rf.ide.core.testdata.text.write.DumperTestHelper.TextCompareResult; public class DumperTestHelperUnitTest { @ForClean private DumperTestHelper helper; @Before public void setUp() { this.helper = new DumperTestHelper(); } @After public void tearDown() throws Exception { ClassFieldCleaner.init(this); } @Test public void test_compare_theFirstTextParameterLengthIsGreater_thanTheSecondOne_differenceInCommonLengthPart() { // prepare final String text1 = "\r\nOcD"; final String text2 = "\r\nOc"; // execute final TextCompareResult cmpResult = helper.compare(text1, text2); // verify assertThat(cmpResult.expected()).isEqualTo(text1); assertThat(cmpResult.got()).isEqualTo(text2); assertThat(cmpResult.getDifferenceInExpected().isSamePlace(new FilePosition(2, 2, 4))).isTrue(); assertThat(cmpResult.getDifferenceInGot().isSamePlace(new FilePosition(2, 2, 4))).isTrue(); } @Test public void test_compare_theFirstTextParameterLengthIsGreater_thanTheSecondOne() { // prepare final String text1 = "\r\nOcD"; final String text2 = "\r\nOc"; // execute final TextCompareResult cmpResult = helper.compare(text1, text2); // verify assertThat(cmpResult.expected()).isEqualTo(text1); assertThat(cmpResult.got()).isEqualTo(text2); assertThat(cmpResult.getDifferenceInExpected().isSamePlace(new FilePosition(2, 2, 4))).isTrue(); assertThat(cmpResult.getDifferenceInGot().isSamePlace(new FilePosition(2, 2, 4))).isTrue(); } @Test public void test_compare_theSecondTextParameterLengthIsGreater_thanTheFirstOne_differenceInCommonLengthPart() { // prepare final String text1 = "\r\nOhD"; final String text2 = "\r\nOc"; // execute final TextCompareResult cmpResult = helper.compare(text1, text2); // verify assertThat(cmpResult.expected()).isEqualTo(text1); assertThat(cmpResult.got()).isEqualTo(text2); assertThat(cmpResult.getDifferenceInExpected().isSamePlace(new FilePosition(2, 1, 3))).isTrue(); assertThat(cmpResult.getDifferenceInGot().isSamePlace(new FilePosition(2, 1, 3))).isTrue(); } @Test public void test_compare_theSecondTextParameterLengthIsGreater_thanTheFirstOne() { // prepare final String text1 = "\r\nOcD"; final String text2 = "\r\nOcDR"; // execute final TextCompareResult cmpResult = helper.compare(text1, text2); // verify assertThat(cmpResult.expected()).isEqualTo(text1); assertThat(cmpResult.got()).isEqualTo(text2); assertThat(cmpResult.getDifferenceInExpected().isSamePlace(new FilePosition(2, 3, 5))).isTrue(); assertThat(cmpResult.getDifferenceInGot().isSamePlace(new FilePosition(2, 3, 5))).isTrue(); } @Test public void test_compare_textLength_isEqual_textAreDifferent() { // prepare final String text1 = "\r\nO1K"; final String text2 = "\r\nOcK"; // execute final TextCompareResult cmpResult = helper.compare(text1, text2); // verify assertThat(cmpResult.expected()).isEqualTo(text1); assertThat(cmpResult.got()).isEqualTo(text2); assertThat(cmpResult.getDifferenceInExpected().isSamePlace(new FilePosition(2, 1, 3))).isTrue(); assertThat(cmpResult.getDifferenceInGot().isSamePlace(new FilePosition(2, 1, 3))).isTrue(); } @Test public void test_compare_textLength_isEqual_textAreTheSame() { // prepare final String text1 = "\r\nOK"; final String text2 = "\r\nOK"; // execute final TextCompareResult cmpResult = helper.compare(text1, text2); // verify assertThat(cmpResult.expected()).isEqualTo(text1); assertThat(cmpResult.got()).isEqualTo(text2); assertThat(cmpResult.getDifferenceInExpected().isSamePlace(FilePosition.createNotSet())).isTrue(); assertThat(cmpResult.getDifferenceInGot().isSamePlace(FilePosition.createNotSet())).isTrue(); } }