|
|
|
|
Re: Xtext Unit tests with JUnitParam [message #1699978 is a reply to message #1699932] |
Mon, 29 June 2015 14:04 |
kon f Messages: 152 Registered: March 2012 |
Senior Member |
|
|
Thank you Christian Just in case if someone else is having the same issue:
import com.google.inject.Inject
import junitparams.JUnitParamsRunner
import junitparams.Parameters
import org.eclipse.xtext.formatting.INodeModelFormatter
import org.eclipse.xtext.formatting.impl.DefaultNodeModelFormatter
import org.eclipse.xtext.junit4.util.ParseHelper
import org.eclipse.xtext.resource.XtextResource
import org.eclipse.xtext.util.Pair
import org.eclipse.xtext.util.Tuples
import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
import static extension org.assertj.core.api.Assertions.*
@RunWith(JUnitParamsRunner)
class TestFormatterTest {
@Inject extension ParseHelper<Model> parseHelper = new ParseHelper
@Inject extension INodeModelFormatter nodeModelFormatter = new DefaultNodeModelFormatter
@Before
def void before() {
var i = new TestStandaloneSetup().createInjectorAndDoEMFRegistration
i.injectMembers(parseHelper)
i.injectMembers(nodeModelFormatter)
}
@Test
@Parameters
def void testFormat(Pair<CharSequence, CharSequence> pair) {
pair.first.assertFormattedAs(pair.second)
}
def static parametersForTestFormat() {
#[
Tuples.create('''test { bla }''',
'''test {
bla
}''')
]
}
def void assertFormattedAs(CharSequence input, CharSequence expected) {
(input.parse.eResource as XtextResource).parseResult.rootNode.format(0, input.length).formattedText.assertThat.
isEqualTo(expected)
}
}
[Updated on: Mon, 29 June 2015 14:04] Report message to a moderator
|
|
|
Powered by
FUDForum. Page generated in 0.03324 seconds