/* * 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.ResourceImport; import org.rf.ide.core.testdata.text.read.recognizer.RobotToken; import org.rf.ide.core.testdata.text.write.NewRobotFileTestHelper; public abstract class ACreationOfSettingsResourceImportTest { public static final String PRETTY_NEW_DIR_LOCATION = "settings//resourceImport//new//"; private final String extension; public ACreationOfSettingsResourceImportTest(final String extension) { this.extension = extension; } public String getExtension() { return extension; } @Test public void test_emptyFile_and_thanCreateResourceImport() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "EmptyResourceImportDeclarationOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); settingTable.newResourceImport(); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_and_thanCreateResourceImport_withName() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "ResourceDeclarationWithResourceNameOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final ResourceImport res = settingTable.newResourceImport(); RobotToken resName = new RobotToken(); resName.setText("res.robot"); res.setPathOrName(resName); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_and_thanCreateResourceImport_with_ThreeCommentTokens() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "ResourceDeclarationWithThreeCommentOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final ResourceImport lib = settingTable.newResourceImport(); RobotToken cm1 = new RobotToken(); cm1.setText("cm1"); RobotToken cm2 = new RobotToken(); cm2.setText("cm2"); RobotToken cm3 = new RobotToken(); cm3.setText("cm3"); lib.addCommentPart(cm1); lib.addCommentPart(cm2); lib.addCommentPart(cm3); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } @Test public void test_emptyFile_and_thanCreateResourceImport_with_resName_andThreeCommentTokens() throws Exception { // prepare final String fileName = PRETTY_NEW_DIR_LOCATION + "ResourceDeclarationWithResNameAndThreeCommentOnly." + getExtension(); final RobotFile modelFile = NewRobotFileTestHelper.getModelFileToModify("2.9"); // test data prepare modelFile.includeSettingTableSection(); final SettingTable settingTable = modelFile.getSettingTable(); final ResourceImport res = settingTable.newResourceImport(); RobotToken resName = new RobotToken(); resName.setText("res.robot"); res.setPathOrName(resName); RobotToken cm1 = new RobotToken(); cm1.setText("cm1"); RobotToken cm2 = new RobotToken(); cm2.setText("cm2"); RobotToken cm3 = new RobotToken(); cm3.setText("cm3"); res.addCommentPart(cm1); res.addCommentPart(cm2); res.addCommentPart(cm3); // verify NewRobotFileTestHelper.assertNewModelTheSameAsInFile(fileName, modelFile); } }