/* * 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.tables.settings.creation; import org.junit.Test; import org.rf.ide.core.testdata.model.RobotFile; import org.rf.ide.core.testdata.model.table.SettingTable; import org.rf.ide.core.testdata.model.table.setting.TestTeardown; import org.rf.ide.core.testdata.text.read.recognizer.RobotToken; import org.rf.ide.core.testdata.text.write.NewRobotFileTestHelper; public abstract class ACreationOfSettingsTestTeardownTest { private static final String PRETTY_NEW_DIR_LOCATION = "settings//testTeardown//new//"; private final String extension; public ACreationOfSettingsTestTeardownTest(final String extension) { this.extension = extension; } @Test public void test_emptyFile_and_thanCreateTestTeardown() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "EmptyTestTeardownDeclarationOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); settingTable.newTestTeardown(); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_createTestTeardown_andAddComments() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "TestTeardownDeclarationWithCommentsOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final TestTeardown testTeardown = settingTable.newTestTeardown(); RobotToken cm1 = new RobotToken(); cm1.setText("cm1"); RobotToken cm2 = new RobotToken(); cm2.setText("cm2"); RobotToken cm3 = new RobotToken(); cm3.setText("cm3"); testTeardown.addCommentPart(cm1); testTeardown.addCommentPart(cm2); testTeardown.addCommentPart(cm3); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_createTestTeardown_andKeywordOnly() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "TestTeardownDeclarationWithKeywordOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final TestTeardown testTeardown = settingTable.newTestTeardown(); RobotToken keyword = new RobotToken(); keyword.setText("keyword"); testTeardown.setKeywordName(keyword); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_createTestTeardown_andKeyword_andComments() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "TestTeardownDeclarationWithKeywordCommentsOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final TestTeardown testTeardown = settingTable.newTestTeardown(); RobotToken keyword = new RobotToken(); keyword.setText("keyword"); testTeardown.setKeywordName(keyword); RobotToken cm1 = new RobotToken(); cm1.setText("cm1"); RobotToken cm2 = new RobotToken(); cm2.setText("cm2"); RobotToken cm3 = new RobotToken(); cm3.setText("cm3"); testTeardown.addCommentPart(cm1); testTeardown.addCommentPart(cm2); testTeardown.addCommentPart(cm3); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_createTestTeardown_andKeyword_andThreeArgs() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "TestTeardownDeclarationWithKeyword3ArgsOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final TestTeardown testTeardown = settingTable.newTestTeardown(); RobotToken keyword = new RobotToken(); keyword.setText("keyword"); testTeardown.setKeywordName(keyword); RobotToken arg1 = new RobotToken(); arg1.setText("arg1"); RobotToken arg2 = new RobotToken(); arg2.setText("arg2"); RobotToken arg3 = new RobotToken(); arg3.setText("arg3"); testTeardown.addArgument(arg1); testTeardown.addArgument(arg2); testTeardown.addArgument(arg3); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_createTestTeardown_andKeyword_andThreeArgs_andComment() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "TestTeardownDeclarationWithKeyword3ArgsAndCommentOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final TestTeardown testTeardown = settingTable.newTestTeardown(); RobotToken keyword = new RobotToken(); keyword.setText("keyword"); testTeardown.setKeywordName(keyword); RobotToken arg1 = new RobotToken(); arg1.setText("arg1"); RobotToken arg2 = new RobotToken(); arg2.setText("arg2"); RobotToken arg3 = new RobotToken(); arg3.setText("arg3"); testTeardown.addArgument(arg1); testTeardown.addArgument(arg2); testTeardown.addArgument(arg3); RobotToken cm1 = new RobotToken(); cm1.setText("cm1"); RobotToken cm2 = new RobotToken(); cm2.setText("cm2"); RobotToken cm3 = new RobotToken(); cm3.setText("cm3"); testTeardown.addCommentPart(cm1); testTeardown.addCommentPart(cm2); testTeardown.addCommentPart(cm3); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } public String getExtension() { return extension; } }