/******************************************************************************** | |
* Copyright (c) 2015-2018 Contributors to the Eclipse Foundation | |
* | |
* See the NOTICE file(s) distributed with this work for additional | |
* information regarding copyright ownership. | |
* | |
* This program and the accompanying materials are made available under the | |
* terms of the Eclipse Public License v. 2.0 which is available at | |
* http://www.eclipse.org/legal/epl-2.0. | |
* | |
* SPDX-License-Identifier: EPL-2.0 | |
* | |
********************************************************************************/ | |
package org.eclipse.mdm.businessobjects.control.i18n; | |
import static org.junit.Assert.assertEquals; | |
import java.lang.reflect.Field; | |
import java.util.Map; | |
import org.eclipse.mdm.api.base.adapter.Attribute; | |
import org.eclipse.mdm.api.base.adapter.EntityType; | |
import org.eclipse.mdm.api.base.model.Channel; | |
import org.eclipse.mdm.api.base.model.ChannelGroup; | |
import org.eclipse.mdm.api.base.model.Environment; | |
import org.eclipse.mdm.api.base.model.Measurement; | |
import org.eclipse.mdm.api.base.model.TestStep; | |
import org.eclipse.mdm.businessobjects.control.I18NActivity; | |
import org.eclipse.mdm.connector.boundary.ConnectorService; | |
import org.junit.Test; | |
public class I18NActivityTest { | |
@Test | |
public void testLocalizeAttributes() throws Exception { | |
I18NActivity i18nActivity = createdMockedActivity(); | |
Map<Attribute, String> locEnvironmentAttrs = i18nActivity.localizeAttributes("default", Environment.class); | |
Map<Attribute, String> locTestAttrs = i18nActivity.localizeAttributes("default", | |
org.eclipse.mdm.api.base.model.Test.class); | |
Map<Attribute, String> locTestStepAttrs = i18nActivity.localizeAttributes("default", TestStep.class); | |
Map<Attribute, String> locMeasurementAttrs = i18nActivity.localizeAttributes("default", Measurement.class); | |
Map<Attribute, String> locChannelGroupAttrs = i18nActivity.localizeAttributes("default", ChannelGroup.class); | |
Map<Attribute, String> locChannelAttrs = i18nActivity.localizeAttributes("default", Channel.class); | |
int expected = 2; | |
assertEquals("map of environment attributes should contain '" + expected + "' localized attributes", expected, | |
locEnvironmentAttrs.size()); | |
assertEquals("map of test attributes should contain '" + expected + "' localized attributes", expected, | |
locTestAttrs.size()); | |
assertEquals("map of test step attributes should contain '" + expected + "' localized attributes", expected, | |
locTestStepAttrs.size()); | |
assertEquals("map of measurement attributes should contain '" + expected + "' localized attributes", expected, | |
locMeasurementAttrs.size()); | |
assertEquals("map of channel group attributes should contain '" + expected + "' localized attributes", expected, | |
locChannelGroupAttrs.size()); | |
assertEquals("map of channel attributes should contain '" + expected + "' localized attributes", expected, | |
locChannelAttrs.size()); | |
} | |
@Test | |
public void testLocalizeType() throws Exception { | |
I18NActivity i18nActivity = createdMockedActivity(); | |
Map<EntityType, String> locEnvironmentType = i18nActivity.localizeType("default", Environment.class); | |
Map<EntityType, String> locTestType = i18nActivity.localizeType("default", | |
org.eclipse.mdm.api.base.model.Test.class); | |
Map<EntityType, String> locTestStepType = i18nActivity.localizeType("default", TestStep.class); | |
Map<EntityType, String> locMeasurementType = i18nActivity.localizeType("default", Measurement.class); | |
Map<EntityType, String> locChannelGroupType = i18nActivity.localizeType("default", ChannelGroup.class); | |
Map<EntityType, String> locChannelType = i18nActivity.localizeType("default", Channel.class); | |
int expected = 1; | |
assertEquals("map of Environment types should contain '" + expected + "' localized type", expected, | |
locEnvironmentType.size()); | |
assertEquals("map of Test types should contain '" + expected + "' localized type", expected, | |
locTestType.size()); | |
assertEquals("map of TestStep types should contain '" + expected + "' localized type", expected, | |
locTestStepType.size()); | |
assertEquals("map of Measurement types should contain '" + expected + "' localized type", expected, | |
locMeasurementType.size()); | |
assertEquals("map of ChannelGroup types should contain '" + expected + "' localized type", expected, | |
locChannelGroupType.size()); | |
assertEquals("map of Channel types should contain '" + expected + "' localized type", expected, | |
locChannelType.size()); | |
} | |
@Test | |
public void testAllLocalizeAttributes() throws Exception { | |
I18NActivity i18nActivity = createdMockedActivity(); | |
Map<Attribute, String> localizedMap = i18nActivity.localizeAllAttributes("default"); | |
int expected = 12; // 6 types with 2 attributes | |
assertEquals("map of all attributes should contain '" + expected + "' localized attributes", expected, | |
localizedMap.size()); | |
} | |
@Test | |
public void testLocalizeAllTypes() throws Exception { | |
I18NActivity i18nActivity = createdMockedActivity(); | |
Map<EntityType, String> localizedMap = i18nActivity.localizeAllTypes("default"); | |
int expected = 6; | |
assertEquals("map of all types should contain '" + expected + "' localized types", expected, | |
localizedMap.size()); | |
} | |
private I18NActivity createdMockedActivity() throws Exception { | |
ConnectorService connectorBeanMock = I18NActivityMockHelper.createConnectorMock(); | |
I18NActivity i18nActivity = new I18NActivity(); | |
Field fieldConnector = i18nActivity.getClass().getDeclaredField("connectorService"); | |
fieldConnector.setAccessible(true); | |
fieldConnector.set(i18nActivity, connectorBeanMock); | |
fieldConnector.setAccessible(false); | |
return i18nActivity; | |
} | |
} |