blob: 4c0ecde513798b364ec3f69fa412680ba756a594 [file] [log] [blame]
/**
* <copyright>
*
* Copyright (c) 2008-2013 See4sys, itemis 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:
* See4sys - Initial API and implementation
* itemis - [423676] AbstractIntegrationTestCase unable to remove project references that are no longer needed
* Siemens - [574930] Model load manager extension
*
* </copyright>
*/
package org.eclipse.sphinx.tests.emf.workspace.integration.internal.loading;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Set;
import org.eclipse.core.resources.IFile;
import org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor;
import org.eclipse.sphinx.emf.metamodel.MetaModelDescriptorRegistry;
import org.eclipse.sphinx.emf.workspace.internal.loading.ModelLoadJob;
import org.eclipse.sphinx.emf.workspace.loading.LoadJobScheduler;
import org.eclipse.sphinx.emf.workspace.loading.ModelLoadManager;
import org.eclipse.sphinx.emf.workspace.loading.operations.DefaultFileLoadOperation;
import org.eclipse.sphinx.examples.hummingbird10.Hummingbird10MMDescriptor;
import org.eclipse.sphinx.examples.hummingbird20.Hummingbird20MMDescriptor;
import org.eclipse.sphinx.examples.uml2.ide.metamodel.UML2MMDescriptor;
import org.eclipse.sphinx.testutils.integration.referenceworkspace.DefaultTestReferenceWorkspace;
/**
*
*/
@SuppressWarnings({ "restriction" })
public class FileLoadJobTest extends AbstractLoadJobTest {
private IFile hbFile10_10A_1;
private IFile hbFile10_10A_2;
private IFile hbFile10_10A_3;
private IFile hbFile10_10B_1;
private IFile hbFile10_10B_2;
private IFile hbFile10_10B_3;
private IFile hbFile20_20B_1;
private IFile hbFile20_20B_2;
private IFile hbFile20_20B_3;
private IFile uml2File_20B_1;
private IFile uml2File_20B_2;
private IFile uml2File_20B_3;
public FileLoadJobTest() {
// Set subset of projects to load
Set<String> projectsToLoad = getProjectSubsetToLoad();
projectsToLoad.add(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_A);
projectsToLoad.add(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_B);
projectsToLoad.add(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B);
}
@Override
protected void setUp() throws Exception {
super.setUp();
hbFile10_10A_1 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_A,
DefaultTestReferenceWorkspace.HB_FILE_NAME_10_10A_1);
hbFile10_10A_2 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_A,
DefaultTestReferenceWorkspace.HB_FILE_NAME_10_10A_2);
hbFile10_10A_3 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_A,
DefaultTestReferenceWorkspace.HB_FILE_NAME_10_10A_3);
hbFile10_10B_1 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_B,
DefaultTestReferenceWorkspace.HB_FILE_NAME_10_10B_1);
hbFile10_10B_2 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_B,
DefaultTestReferenceWorkspace.HB_FILE_NAME_10_10B_2);
hbFile10_10B_3 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_10_B,
DefaultTestReferenceWorkspace.HB_FILE_NAME_10_10B_3);
hbFile20_20B_1 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B,
DefaultTestReferenceWorkspace.HB_FILE_NAME_20_20B_1);
hbFile20_20B_2 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B,
DefaultTestReferenceWorkspace.HB_FILE_NAME_20_20B_2);
hbFile20_20B_3 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B,
DefaultTestReferenceWorkspace.HB_FILE_NAME_20_20B_3);
uml2File_20B_1 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B,
DefaultTestReferenceWorkspace.UML2_FILE_NAME_20B_1);
uml2File_20B_2 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B,
DefaultTestReferenceWorkspace.UML2_FILE_NAME_20B_2);
uml2File_20B_3 = refWks.getReferenceFile(DefaultTestReferenceWorkspace.HB_PROJECT_NAME_20_B,
DefaultTestReferenceWorkspace.UML2_FILE_NAME_20B_3);
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of file {@linkplain DefaultTestReferenceWorkspace#HB_FILE_NAME_10_10A_1} specifying
* {@linkplain MetaModelDescriptorRegistry#ANY_MM} as meta-model descriptor.
*/
public void testShouldCreateJob_10A_oneFile() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = Collections.singletonList(hbFile10_10A_1);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, MetaModelDescriptorRegistry.ANY_MM, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[6];
// The messages to display in case of violated assertions
String[] messages = new String[6];
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
int index = -1;
{ // 0
Collection<IFile> files = Collections.singletonList(hbFile10_10A_1);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1
Collection<IFile> files = Collections.singletonList(hbFile10_10A_2);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2
Collection<IFile> files = Collections.singletonList(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10B_1);
files.add(hbFile10_10B_2);
files.add(hbFile10_10B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 5
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertFalse(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject10_A} specifying
* {@linkplain MetaModelDescriptorRegistry#ANY_MM} as meta-model descriptor.
*/
public void testCoveredByExistingLoadJob_10A_ANYMM() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile10_10A_1);
filesToLoad.add(hbFile10_10A_2);
filesToLoad.add(hbFile10_10A_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, MetaModelDescriptorRegistry.ANY_MM, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[12];
// The messages to display in case of violated assertions
String[] messages = new String[12];
int index = -1;
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
{ // 0
Collection<IFile> files = Collections.singletonList(hbFile10_10A_1);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1
Collection<IFile> files = Collections.singletonList(hbFile10_10A_2);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2
Collection<IFile> files = Collections.singletonList(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10B_1);
files.add(hbFile10_10B_2);
files.add(hbFile10_10B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 5
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
{ // 6
Collection<IFile> files = Collections.singletonList(hbFile10_10A_1);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 7
Collection<IFile> files = Collections.singletonList(hbFile10_10A_2);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 8
Collection<IFile> files = Collections.singletonList(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 9
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 10
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10B_1);
files.add(hbFile10_10B_2);
files.add(hbFile10_10B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 11
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertFalse(messages[0], shouldCreateJob[0]);
assertFalse(messages[1], shouldCreateJob[1]);
assertFalse(messages[2], shouldCreateJob[2]);
assertFalse(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertFalse(messages[6], shouldCreateJob[6]);
assertFalse(messages[7], shouldCreateJob[7]);
assertFalse(messages[8], shouldCreateJob[8]);
assertFalse(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject10_A} specifying
* {@linkplain Hummingbird10MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_10A_Hb10RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile10_10A_1);
filesToLoad.add(hbFile10_10A_2);
filesToLoad.add(hbFile10_10A_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird10MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[12];
// The messages to display in case of violated assertions
String[] messages = new String[12];
int index = -1;
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
{ // 0
Collection<IFile> files = Collections.singletonList(hbFile10_10A_1);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1
Collection<IFile> files = Collections.singletonList(hbFile10_10A_2);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2
Collection<IFile> files = Collections.singletonList(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10B_1);
files.add(hbFile10_10B_2);
files.add(hbFile10_10B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 5
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
{ // 6
Collection<IFile> files = Collections.singletonList(hbFile10_10A_1);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 7
Collection<IFile> files = Collections.singletonList(hbFile10_10A_2);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 8
Collection<IFile> files = Collections.singletonList(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 9
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 10
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10B_1);
files.add(hbFile10_10B_2);
files.add(hbFile10_10B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 11
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertFalse(messages[6], shouldCreateJob[6]);
assertFalse(messages[7], shouldCreateJob[7]);
assertFalse(messages[8], shouldCreateJob[8]);
assertFalse(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject10_A} specifying
* {@linkplain UML2MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_10A_UML2MMD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile10_10A_1);
filesToLoad.add(hbFile10_10A_2);
filesToLoad.add(hbFile10_10A_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, UML2MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[6];
// The messages to display in case of violated assertions
String[] messages = new String[6];
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
int index = -1;
{ // 0
Collection<IFile> files = Collections.singletonList(hbFile10_10A_1);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1
Collection<IFile> files = Collections.singletonList(hbFile10_10A_2);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2
Collection<IFile> files = Collections.singletonList(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10B_1);
files.add(hbFile10_10B_2);
files.add(hbFile10_10B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 5
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying
* {@linkplain MetaModelDescriptorRegistry#ANY_MM} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_AllFiles_ANYMM() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, MetaModelDescriptorRegistry.ANY_MM, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertFalse(messages[0], shouldCreateJob[0]);
assertFalse(messages[1], shouldCreateJob[1]);
assertFalse(messages[2], shouldCreateJob[2]);
assertFalse(messages[3], shouldCreateJob[3]);
assertFalse(messages[4], shouldCreateJob[4]);
assertFalse(messages[5], shouldCreateJob[5]);
assertFalse(messages[6], shouldCreateJob[6]);
assertFalse(messages[7], shouldCreateJob[7]);
assertFalse(messages[8], shouldCreateJob[8]);
assertFalse(messages[9], shouldCreateJob[9]);
assertFalse(messages[10], shouldCreateJob[10]);
assertFalse(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying
* {@linkplain Hummingbird10MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_AllFiles_Hb10RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird10MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertFalse(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertFalse(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertFalse(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying
* {@linkplain Hummingbird20MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_AllFiles_Hb20RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird20MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertFalse(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertFalse(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertFalse(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying
* {@linkplain UML2MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_AllFiles_UML2MMD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, UML2MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertFalse(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertFalse(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertFalse(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 10 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying
* {@linkplain MetaModelDescriptorRegistry#ANY_MM} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_Hb10Files_ANYMM() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
ModelLoadManager.INSTANCE.loadFiles(Collections.<IFile> emptyList(), MetaModelDescriptorRegistry.ANY_MM, true, null);
// Verify prerequisites assertions
assertNoLoadJobIsSleeping();
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
// 1011 1010 1001 1111 1100
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// 1111 1110 1001 1111 1100
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 10 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying {@linkplain Hummingbird10MMDescriptor} as
* meta-model descriptor.
*/
public void testShouldCreateJob_20B_Hb10Files_Hb10RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
ModelLoadManager.INSTANCE.loadFiles(Collections.<IFile> emptyList(), Hummingbird10MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertNoLoadJobIsSleeping();
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// 1011 1010 1001 1111 1100
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 10 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying {@linkplain Hummingbird20MMDescriptor} as
* meta-model descriptor.
*/
public void testShouldCreateJob_20B_Hb10Files_Hb20RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
ModelLoadManager.INSTANCE.loadFiles(Collections.<IFile> emptyList(), Hummingbird20MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertNoLoadJobIsSleeping();
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 10 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying {@linkplain UML2MMDescriptor} as meta-model
* descriptor.
*/
public void testShouldCreateJob_20B_Hb10Files_UML2MMD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
ModelLoadManager.INSTANCE.loadFiles(Collections.<IFile> emptyList(), UML2MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertNoLoadJobIsSleeping();
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 20 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying
* {@linkplain MetaModelDescriptorRegistry#ANY_MM} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_Hb20Files_ANYMM() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, MetaModelDescriptorRegistry.ANY_MM, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertFalse(messages[4], shouldCreateJob[4]);
assertFalse(messages[5], shouldCreateJob[5]);
assertFalse(messages[6], shouldCreateJob[6]);
assertFalse(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 20 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying {@linkplain Hummingbird10MMDescriptor} as
* meta-model descriptor.
*/
public void testShouldCreateJob_20B_Hb20Files_Hb10RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird10MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertFalse(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 20 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying {@linkplain Hummingbird20MMDescriptor} as
* meta-model descriptor.
*/
public void testShouldCreateJob_20B_Hb20Files_Hb20RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird20MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertFalse(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Hummingbird 20 files from project
* {@linkplain DefaultTestReferenceWorkspace#arProject20_B} specifying {@linkplain UML2MMDescriptor} as meta-model
* descriptor.
*/
public void testShouldCreateJob_20B_Hb20Files_UML2MMD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(hbFile20_20B_1);
filesToLoad.add(hbFile20_20B_2);
filesToLoad.add(hbFile20_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, UML2MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertFalse(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Uml2 files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B}
* specifying {@linkplain MetaModelDescriptorRegistry#ANY_MM} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_UML2Files_ANYMM() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, MetaModelDescriptorRegistry.ANY_MM, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertFalse(messages[8], shouldCreateJob[8]);
assertFalse(messages[9], shouldCreateJob[9]);
assertFalse(messages[10], shouldCreateJob[10]);
assertFalse(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
//
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Uml2 files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B}
* specifying {@linkplain Hummingbird10MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_Uml2Files_Hb10RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird10MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertFalse(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Uml2 files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B}
* specifying {@linkplain Hummingbird20MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_Uml2Files_Hb20RD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, Hummingbird20MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertFalse(messages[10], shouldCreateJob[10]);
assertTrue(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
/**
* Test method for
* {@linkplain ModelLoadJob#shouldCreateJob(java.util.Collection, org.eclipse.sphinx.emf.metamodel.IMetaModelDescriptor)}
* <p>
* Test made on loading of Uml2 files from project {@linkplain DefaultTestReferenceWorkspace#arProject20_B}
* specifying {@linkplain UML2MMDescriptor} as meta-model descriptor.
*/
public void testShouldCreateJob_20B_Uml2Files_UML2MMD() {
// Local initialization of this test
LoadJobScheduler loadJobScheduler = new LoadJobScheduler();
Collection<IFile> filesToLoad = new ArrayList<IFile>();
filesToLoad.add(uml2File_20B_1);
filesToLoad.add(uml2File_20B_2);
filesToLoad.add(uml2File_20B_3);
ModelLoadManager.INSTANCE.loadFiles(filesToLoad, UML2MMDescriptor.INSTANCE, true, null);
// Verify prerequisites assertions
assertOnlyOneLoadJobIsSleeping(DefaultFileLoadOperation.class);
// The results of the method under test
boolean[] shouldCreateJob = new boolean[20];
// The messages to display in case of violated assertions
String[] messages = new String[20];
int index = -1;
{ // 0
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 0.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 0.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 1
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
{ // 1.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 1.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 2
Collection<IFile> files = new ArrayList<IFile>();
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
{ // 2.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 2.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_NOT_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 3
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile20_20B_1);
files.add(hbFile20_20B_2);
files.add(hbFile20_20B_3);
files.add(uml2File_20B_1);
files.add(uml2File_20B_2);
files.add(uml2File_20B_3);
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 3.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 3.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
{ // 4
Collection<IFile> files = new ArrayList<IFile>();
files.add(hbFile10_10A_1);
files.add(hbFile10_10A_2);
files.add(hbFile10_10A_3);
{ // 4.0
IMetaModelDescriptor mmDescriptor = MetaModelDescriptorRegistry.ANY_MM;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.1
IMetaModelDescriptor mmDescriptor = Hummingbird10MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.2
IMetaModelDescriptor mmDescriptor = Hummingbird20MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
{ // 4.3
IMetaModelDescriptor mmDescriptor = UML2MMDescriptor.INSTANCE;
messages[++index] = getMessage(SHOULD_CREATE, files, mmDescriptor);
DefaultFileLoadOperation defaultFileLoadOperation = new DefaultFileLoadOperation(files, mmDescriptor);
shouldCreateJob[index] = !loadJobScheduler.coveredByExistingLoadJob(defaultFileLoadOperation);
}
}
// Wake up the model load job that we put sleeping before
wakeUp();
// Check assertions
assertTrue(messages[0], shouldCreateJob[0]);
assertTrue(messages[1], shouldCreateJob[1]);
assertTrue(messages[2], shouldCreateJob[2]);
assertTrue(messages[3], shouldCreateJob[3]);
assertTrue(messages[4], shouldCreateJob[4]);
assertTrue(messages[5], shouldCreateJob[5]);
assertTrue(messages[6], shouldCreateJob[6]);
assertTrue(messages[7], shouldCreateJob[7]);
assertTrue(messages[8], shouldCreateJob[8]);
assertTrue(messages[9], shouldCreateJob[9]);
assertTrue(messages[10], shouldCreateJob[10]);
assertFalse(messages[11], shouldCreateJob[11]);
assertTrue(messages[12], shouldCreateJob[12]);
assertTrue(messages[13], shouldCreateJob[13]);
assertTrue(messages[14], shouldCreateJob[14]);
assertTrue(messages[15], shouldCreateJob[15]);
assertTrue(messages[16], shouldCreateJob[16]);
assertTrue(messages[17], shouldCreateJob[17]);
assertTrue(messages[18], shouldCreateJob[18]);
assertTrue(messages[19], shouldCreateJob[19]);
// Ends the test by verifying that everything is fine
finish();
}
}