WordElement word = lexicon.getWord("lie", LexicalCategory.VERB);
Assert.assertEquals(Inflection.REGULAR, word
.getDefaultInflectionalVariant());
// default past is "lied"
InflectedWordElement infl = new InflectedWordElement(word);
infl.setFeature(Feature.TENSE, Tense.PAST);
String past = realiser.realise(infl).getRealisation();
Assert.assertEquals("lied", past);
// switch to irregular
word.setDefaultInflectionalVariant(Inflection.IRREGULAR);
infl = new InflectedWordElement(word);
infl.setFeature(Feature.TENSE, Tense.PAST);
past = realiser.realise(infl).getRealisation();
Assert.assertEquals("lay", past);
// switch back to regular
word.setDefaultInflectionalVariant(Inflection.REGULAR);
Assert.assertEquals(null, word.getFeature(LexicalFeature.PAST));
infl = new InflectedWordElement(word);
infl.setFeature(Feature.TENSE, Tense.PAST);
past = realiser.realise(infl).getRealisation();
Assert.assertEquals("lied", past);
}