blob: 9c8edb0f8e7c30fccfff9c55897a4701b38cabdc [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.ua.tests.cheatsheet.parser;
import java.net.URL;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Path;
import org.eclipse.ua.tests.plugin.UserAssistanceTestPlugin;
import org.eclipse.ui.internal.cheatsheets.data.CheatSheet;
import org.eclipse.ui.internal.cheatsheets.data.CheatSheetParser;
import org.junit.Assert;
import org.junit.Test;
/*
* Tests the cheat sheets parser on tolerable cheat sheets. This means they're not strictly correct,
* but the parser will tolerate them.
*/
public class TolerateTest {
private void parseCheatsheet(String file) {
Path path = new Path("data/cheatsheet/valid/tolerate/" + file);
URL url = FileLocator.find(UserAssistanceTestPlugin.getDefault().getBundle(), path, null);
CheatSheetParser parser = new CheatSheetParser();
CheatSheet sheet = (CheatSheet)parser.parse(url, UserAssistanceTestPlugin.getPluginId(), CheatSheetParser.SIMPLE_ONLY);
Assert.assertEquals("Warning not generated: " + url, IStatus.WARNING, parser.getStatus().getSeverity());
Assert.assertNotNull("Tried parsing a tolerable cheat sheet but parser returned null: " + url, sheet);
}
@Test
public void testItemExtraAttr() {
parseCheatsheet("ItemElement_ExtraAttr.xml");
}
@Test
public void testIntroExtraElement() {
parseCheatsheet("IntroElement_ExtraElement.xml");
}
@Test
public void testIntroExtraAttr() {
parseCheatsheet("IntroElement_ExtraAttr.xml");
}
@Test
public void testDescExtraElement() {
parseCheatsheet("DescriptionElement_ExtraElements.xml");
}
@Test
public void testConditionalExtraElement() {
parseCheatsheet("ConditionalSubItem_ExtraElement.xml");
}
@Test
public void testConditionalExtraAttr() {
parseCheatsheet("ConditionalSubItem_ExtraAttr.xml");
}
@Test
public void testElementExtraElement() {
parseCheatsheet("CheatSheetElement_ExtraElement.xml");
}
@Test
public void testElementExtraAttr() {
parseCheatsheet("CheatSheetElement_ExtraAttr.xml");
}
@Test
public void testExtraElement() {
parseCheatsheet("ActionElement_ExtraElement.xml");
}
@Test
public void testExtraAttr() {
parseCheatsheet("ActionElement_ExtraAttr.xml");
}
}