@Nonnull @Override public Backend createBackend(URI uri, ImmutableConfig baseConfig) { return new DefaultInMemoryBackend(); } }
@BeforeEach void initStoreAdapter() { Store innerStore = StoreFactory.getInstance().createStore(new DefaultInMemoryBackend(), new BaseConfig<>()); store = new AbstractStoreAdapter(innerStore, null) { @Nonnull @Override protected Cache<Id, PersistentEObject> getCache() { return CacheBuilder.empty(); } }; store.updateInstanceOf(object); }
try (Backend sourceBackend = new DefaultInMemoryBackend(); InputStream in = new URL(expectedUri.toString()).openStream()) { Migrator.fromXmi(in).toMapper(sourceBackend).migrate(); try (Backend targetBackend = new DefaultInMemoryBackend()) { Migrator.fromMapper(sourceBackend).toMapper(targetBackend).migrate();
/** * Checks the import from a file to a {@link Backend}. */ @Tag("slow") @ParameterizedTest(name = "[{index}] source = {0}") @ArgumentsSource(UriProvider.All.class) void testDirectImport(URI uri) throws IOException { final File sourceFile = currentTempFile(); Log.info("Importing from file... [{0}]", sourceFile); try (Backend backend = new DefaultInMemoryBackend(); InputStream in = new URL(uri.toString()).openStream()) { Migrator.fromXmi(in).toMapper(backend).migrate(); EObject actual = createMockResource(uri, backend).getContents().get(0); EObject expected = ResourceManager.load(uri); // Comparing with EMF ModelComparisonUtils.assertEObjectAreEqual(actual, expected); expected.eResource().unload(); } } }
/** * Checks the export from a {@link Backend} to a file. */ @Tag("slow") @ParameterizedTest(name = "[{index}] source = {0}: useCompression = {1}") @ArgumentsSource(UriProvider.UncompressedWithBooleans.class) void testDirectExport(URI uri, Boolean useCompression) throws IOException { final File targetFile = new File(currentTempFile() + "." + (useCompression ? "z" : Strings.EMPTY) + "xmi"); Log.info("Exporting to file... [{0}]", targetFile); try (DataMapper mapper = new DefaultInMemoryBackend(); InputStream in = new URL(uri.toString()).openStream()) { Migrator.fromXmi(in).toMapper(mapper).migrate(); Migrator.fromMapper(mapper) .toXmi(targetFile, useCompression) .migrate(); } // Comparing with EMF EObject actual = ResourceManager.load(URI.createFileURI(targetFile.toString())); EObject expected = ResourceManager.load(uri); ModelComparisonUtils.assertEObjectAreEqual(actual, expected); actual.eResource().unload(); expected.eResource().unload(); } }