Search in sources :

Example 1 with BasicEMap

use of org.eclipse.emf.common.util.BasicEMap in project tmdm-studio-se by Talend.

the class ContainerCacheServiceTest method testPutIRepositoryViewObject.

@Test
public void testPutIRepositoryViewObject() {
    // $NON-NLS-1$
    String propId = "propertyId";
    // 
    try {
        ContainerCacheService.put((IRepositoryViewObject) null);
    } catch (Exception e) {
        assertTrue(e instanceof IllegalArgumentException);
    }
    // 
    IRepositoryViewObject mockViewObj = Mockito.mock(IRepositoryViewObject.class);
    Mockito.when(mockViewObj.getId()).thenReturn(propId);
    ContainerCacheService.put(mockViewObj);
    assertEquals(mockViewObj, ContainerCacheService.get(propId));
    ContainerCacheService.clearCache();
    // 
    Map<Class<?>, AbstractDQModelService> dqModelServices = null;
    Map<Class, IService> services = null;
    IProxyRepositoryService originRepoService = null;
    AbstractDQModelService originDQService = null;
    try {
        Field declaredField = GlobalServiceRegister.class.getDeclaredField("dqModelServices");
        declaredField.setAccessible(true);
        dqModelServices = (Map<Class<?>, AbstractDQModelService>) declaredField.get(GlobalServiceRegister.getDefault());
        AbstractDQModelService mockDQService = Mockito.mock(AbstractDQModelService.class);
        Mockito.when(mockDQService.getTDQRepObjType(any(Item.class))).thenReturn(IServerObjectRepositoryType.TYPE_CUSTOM_FORM);
        originDQService = dqModelServices.get(AbstractDQModelService.class);
        dqModelServices.put(AbstractDQModelService.class, mockDQService);
        Field serviceField = GlobalServiceRegister.class.getDeclaredField("services");
        serviceField.setAccessible(true);
        IProxyRepositoryService mockRepoService = Mockito.mock(IProxyRepositoryService.class);
        IProxyRepositoryFactory mockFactory = Mockito.mock(IProxyRepositoryFactory.class);
        Mockito.when(mockRepoService.getProxyRepositoryFactory()).thenReturn(mockFactory);
        services = (Map<Class, IService>) serviceField.get(GlobalServiceRegister.getDefault());
        originRepoService = (IProxyRepositoryService) services.get(IProxyRepositoryService.class);
        services.put(IProxyRepositoryService.class, mockRepoService);
        Property mockProp = Mockito.mock(Property.class);
        Mockito.when(mockProp.getId()).thenReturn(propId);
        Mockito.when(mockProp.getAdditionalProperties()).thenReturn(new BasicEMap());
        Item mockItem = Mockito.mock(Item.class);
        ItemState mockState = Mockito.mock(ItemState.class);
        Mockito.when(mockState.isDeleted()).thenReturn(false);
        Mockito.when(mockItem.getState()).thenReturn(mockState);
        Mockito.when(mockProp.getItem()).thenReturn(mockItem);
        RepositoryObject mockRepObj = Mockito.mock(RepositoryObject.class);
        Mockito.when(mockRepObj.getProperty()).thenReturn(mockProp);
        Mockito.when(mockRepObj.getId()).thenReturn(propId);
        ContainerCacheService.put(mockRepObj);
        assertTrue(ContainerCacheService.get(propId) != null);
    } catch (Exception e) {
        log.error(e.getMessage(), e);
    } finally {
        if (dqModelServices != null) {
            dqModelServices.put(AbstractDQModelService.class, originDQService);
        }
        if (services != null) {
            services.put(IProxyRepositoryService.class, originRepoService);
        }
    }
}
Also used : RepositoryObject(org.talend.core.model.repository.RepositoryObject) FolderRepositoryObject(org.talend.mdm.repository.models.FolderRepositoryObject) BasicEMap(org.eclipse.emf.common.util.BasicEMap) AbstractDQModelService(org.talend.core.AbstractDQModelService) Field(java.lang.reflect.Field) WSDataModelItem(org.talend.mdm.repository.model.mdmproperties.WSDataModelItem) Item(org.talend.core.model.properties.Item) MDMServerObjectItem(org.talend.mdm.repository.model.mdmproperties.MDMServerObjectItem) ContainerItem(org.talend.mdm.repository.model.mdmproperties.ContainerItem) ItemState(org.talend.core.model.properties.ItemState) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) IProxyRepositoryService(org.talend.repository.model.IProxyRepositoryService) Property(org.talend.core.model.properties.Property) IService(org.talend.core.IService) IProxyRepositoryFactory(org.talend.repository.model.IProxyRepositoryFactory) Test(org.junit.Test)

Example 2 with BasicEMap

use of org.eclipse.emf.common.util.BasicEMap in project tmdm-studio-se by Talend.

the class ContainerCacheServiceTest method testPutPropertyIRepositoryViewObject.

@Test
public void testPutPropertyIRepositoryViewObject() {
    // $NON-NLS-1$
    String propId = "propertyId";
    Property mockProp = Mockito.mock(Property.class);
    Mockito.when(mockProp.getId()).thenReturn(propId);
    IRepositoryViewObject mockViewObj = Mockito.mock(IRepositoryViewObject.class);
    RepositoryObject mockRepObj = Mockito.mock(RepositoryObject.class);
    Mockito.when(mockRepObj.getProperty()).thenReturn(mockProp);
    // 
    try {
        ContainerCacheService.put(null, mockViewObj);
    } catch (Exception e) {
        assertTrue(e instanceof IllegalArgumentException);
    }
    try {
        ContainerCacheService.put(mockProp, null);
    } catch (Exception e) {
        assertTrue(e instanceof IllegalArgumentException);
    }
    try {
        ContainerCacheService.put(null, null);
    } catch (Exception e) {
        assertTrue(e instanceof IllegalArgumentException);
    }
    ContainerCacheService.put(mockProp, mockViewObj);
    assertEquals(mockViewObj, ContainerCacheService.get(propId));
    ContainerCacheService.clearCache();
    Map<Class<?>, AbstractDQModelService> dqModelServices = null;
    Map<Class, IService> services = null;
    IProxyRepositoryService originRepoService = null;
    AbstractDQModelService originDQService = null;
    try {
        Field declaredField = GlobalServiceRegister.class.getDeclaredField("dqModelServices");
        declaredField.setAccessible(true);
        dqModelServices = (Map<Class<?>, AbstractDQModelService>) declaredField.get(GlobalServiceRegister.getDefault());
        AbstractDQModelService mockDQService = Mockito.mock(AbstractDQModelService.class);
        Mockito.when(mockDQService.getTDQRepObjType(any(Item.class))).thenReturn(IServerObjectRepositoryType.TYPE_CUSTOM_FORM);
        originDQService = dqModelServices.get(AbstractDQModelService.class);
        dqModelServices.put(AbstractDQModelService.class, mockDQService);
        Field serviceField = GlobalServiceRegister.class.getDeclaredField("services");
        serviceField.setAccessible(true);
        IProxyRepositoryService mockRepoService = Mockito.mock(IProxyRepositoryService.class);
        IProxyRepositoryFactory mockFactory = Mockito.mock(IProxyRepositoryFactory.class);
        Mockito.when(mockRepoService.getProxyRepositoryFactory()).thenReturn(mockFactory);
        services = (Map<Class, IService>) serviceField.get(GlobalServiceRegister.getDefault());
        originRepoService = (IProxyRepositoryService) dqModelServices.get(IProxyRepositoryService.class);
        services.put(IProxyRepositoryService.class, mockRepoService);
        ItemState mockItemState = Mockito.mock(ItemState.class);
        Mockito.when(mockItemState.isDeleted()).thenReturn(false);
        WSDataModelItem mockModelItem = Mockito.mock(WSDataModelItem.class);
        Mockito.when(mockModelItem.getState()).thenReturn(mockItemState);
        Mockito.when(mockProp.getItem()).thenReturn(mockModelItem);
        Mockito.when(mockProp.getAdditionalProperties()).thenReturn(new BasicEMap());
        ContainerCacheService.put(mockProp, mockRepObj);
        assertTrue(ContainerCacheService.get(propId) != null);
    } catch (Exception e) {
        log.error(e.getMessage(), e);
    } finally {
        if (dqModelServices != null) {
            dqModelServices.put(AbstractDQModelService.class, originDQService);
        }
        if (services != null) {
            services.put(IProxyRepositoryService.class, originRepoService);
        }
    }
}
Also used : RepositoryObject(org.talend.core.model.repository.RepositoryObject) FolderRepositoryObject(org.talend.mdm.repository.models.FolderRepositoryObject) BasicEMap(org.eclipse.emf.common.util.BasicEMap) AbstractDQModelService(org.talend.core.AbstractDQModelService) Field(java.lang.reflect.Field) WSDataModelItem(org.talend.mdm.repository.model.mdmproperties.WSDataModelItem) Item(org.talend.core.model.properties.Item) MDMServerObjectItem(org.talend.mdm.repository.model.mdmproperties.MDMServerObjectItem) ContainerItem(org.talend.mdm.repository.model.mdmproperties.ContainerItem) ItemState(org.talend.core.model.properties.ItemState) WSDataModelItem(org.talend.mdm.repository.model.mdmproperties.WSDataModelItem) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) IProxyRepositoryService(org.talend.repository.model.IProxyRepositoryService) Property(org.talend.core.model.properties.Property) IService(org.talend.core.IService) IProxyRepositoryFactory(org.talend.repository.model.IProxyRepositoryFactory) Test(org.junit.Test)

Example 3 with BasicEMap

use of org.eclipse.emf.common.util.BasicEMap in project tmdm-studio-se by Talend.

the class ConsistencyServiceTest method testGetLocalDigestValue.

@Test
public void testGetLocalDigestValue() {
    assertNull(ConsistencyService.getInstance().getLocalDigestValue(null));
    // $NON-NLS-1$
    String localDigestValue = "local_digest_value_0123";
    MDMServerObject mockMDMServerObj = Mockito.mock(MDMServerObject.class);
    Mockito.when(mockMDMServerObj.getDigestValue()).thenReturn(localDigestValue);
    MDMServerObjectItem mockItem = Mockito.mock(MDMServerObjectItem.class);
    Mockito.when(mockItem.getMDMServerObject()).thenReturn(mockMDMServerObj);
    // 
    assertEquals(localDigestValue, ConsistencyService.getInstance().getLocalDigestValue(mockItem));
    EMap mockProperties = new BasicEMap<>();
    mockProperties.put("digestValue", localDigestValue);
    Property mockProperty = Mockito.mock(Property.class);
    Mockito.when(mockProperty.getAdditionalProperties()).thenReturn(mockProperties);
    ProcessItem mockProcessItem = Mockito.mock(ProcessItem.class);
    Mockito.when(mockProcessItem.getProperty()).thenReturn(mockProperty);
    // 
    assertEquals(localDigestValue, ConsistencyService.getInstance().getLocalDigestValue(mockProcessItem));
}
Also used : ProcessItem(org.talend.core.model.properties.ProcessItem) MDMServerObjectItem(org.talend.mdm.repository.model.mdmproperties.MDMServerObjectItem) BasicEMap(org.eclipse.emf.common.util.BasicEMap) BasicEMap(org.eclipse.emf.common.util.BasicEMap) EMap(org.eclipse.emf.common.util.EMap) Property(org.talend.core.model.properties.Property) MDMServerObject(org.talend.mdm.repository.model.mdmserverobject.MDMServerObject) Test(org.junit.Test)

Example 4 with BasicEMap

use of org.eclipse.emf.common.util.BasicEMap in project tmdm-studio-se by Talend.

the class ConsistencyServiceTest method testGetCurrentDigestValue.

@Test
public void testGetCurrentDigestValue() {
    assertNull(ConsistencyService.getInstance().getCurrentDigestValue(null));
    // $NON-NLS-1$
    String currentDigestValue = "current_digest_value_0123";
    MDMServerObject mockMDMServerObj = Mockito.mock(MDMServerObject.class);
    Mockito.when(mockMDMServerObj.getCurrentDigestValue()).thenReturn(currentDigestValue);
    MDMServerObjectItem mockItem = Mockito.mock(MDMServerObjectItem.class);
    Mockito.when(mockItem.getMDMServerObject()).thenReturn(mockMDMServerObj);
    // 
    assertEquals(currentDigestValue, ConsistencyService.getInstance().getCurrentDigestValue(mockItem));
    EMap mockProperties = new BasicEMap<>();
    // $NON-NLS-1$
    mockProperties.put("currentDigestValue", currentDigestValue);
    Property mockProperty = Mockito.mock(Property.class);
    Mockito.when(mockProperty.getAdditionalProperties()).thenReturn(mockProperties);
    ProcessItem mockProcessItem = Mockito.mock(ProcessItem.class);
    Mockito.when(mockProcessItem.getProperty()).thenReturn(mockProperty);
    // 
    assertEquals(currentDigestValue, ConsistencyService.getInstance().getCurrentDigestValue(mockProcessItem));
}
Also used : ProcessItem(org.talend.core.model.properties.ProcessItem) MDMServerObjectItem(org.talend.mdm.repository.model.mdmproperties.MDMServerObjectItem) BasicEMap(org.eclipse.emf.common.util.BasicEMap) BasicEMap(org.eclipse.emf.common.util.BasicEMap) EMap(org.eclipse.emf.common.util.EMap) Property(org.talend.core.model.properties.Property) MDMServerObject(org.talend.mdm.repository.model.mdmserverobject.MDMServerObject) Test(org.junit.Test)

Example 5 with BasicEMap

use of org.eclipse.emf.common.util.BasicEMap in project glsp-server by eclipse-glsp.

the class EMapTypeAdapter method read.

@Override
public EMap<?, ?> read(final JsonReader in) throws IOException {
    JsonToken peek = in.peek();
    if (peek == JsonToken.NULL) {
        in.nextNull();
        return null;
    }
    TypeAdapter<?> mapAdapter = gson.getAdapter(TypeToken.get(Map.class));
    Map<?, ?> map = (Map<?, ?>) mapAdapter.read(in);
    return new BasicEMap<>(map);
}
Also used : BasicEMap(org.eclipse.emf.common.util.BasicEMap) JsonToken(com.google.gson.stream.JsonToken) Map(java.util.Map) BasicEMap(org.eclipse.emf.common.util.BasicEMap) EMap(org.eclipse.emf.common.util.EMap)

Aggregations

BasicEMap (org.eclipse.emf.common.util.BasicEMap)5 Test (org.junit.Test)4 Property (org.talend.core.model.properties.Property)4 MDMServerObjectItem (org.talend.mdm.repository.model.mdmproperties.MDMServerObjectItem)4 EMap (org.eclipse.emf.common.util.EMap)3 Field (java.lang.reflect.Field)2 AbstractDQModelService (org.talend.core.AbstractDQModelService)2 IService (org.talend.core.IService)2 Item (org.talend.core.model.properties.Item)2 ItemState (org.talend.core.model.properties.ItemState)2 ProcessItem (org.talend.core.model.properties.ProcessItem)2 IRepositoryViewObject (org.talend.core.model.repository.IRepositoryViewObject)2 RepositoryObject (org.talend.core.model.repository.RepositoryObject)2 ContainerItem (org.talend.mdm.repository.model.mdmproperties.ContainerItem)2 WSDataModelItem (org.talend.mdm.repository.model.mdmproperties.WSDataModelItem)2 MDMServerObject (org.talend.mdm.repository.model.mdmserverobject.MDMServerObject)2 FolderRepositoryObject (org.talend.mdm.repository.models.FolderRepositoryObject)2 IProxyRepositoryFactory (org.talend.repository.model.IProxyRepositoryFactory)2 IProxyRepositoryService (org.talend.repository.model.IProxyRepositoryService)2 JsonToken (com.google.gson.stream.JsonToken)1