Search in sources :

Example 1 with DataSource

use of com.adobe.granite.ui.components.ds.DataSource in project aem-core-wcm-components by Adobe-Marketing-Cloud.

the class OptionsImplTest method setUpMockDataSource.

private void setUpMockDataSource() {
    Resource dataSourceResource = context.resourceResolver().getResource(CONTENT_ROOT + "/dataDatasource/datasource/items");
    SimpleDataSource dataSource = new SimpleDataSource(dataSourceResource.listChildren());
    context.request().setAttribute(DataSource.class.getName(), dataSource);
}
Also used : SimpleDataSource(com.adobe.granite.ui.components.ds.SimpleDataSource) Resource(org.apache.sling.api.resource.Resource) SimpleDataSource(com.adobe.granite.ui.components.ds.SimpleDataSource) DataSource(com.adobe.granite.ui.components.ds.DataSource)

Example 2 with DataSource

use of com.adobe.granite.ui.components.ds.DataSource in project aem-core-wcm-components by Adobe-Marketing-Cloud.

the class AllowedTitleSizesDataSourceServletTest method testDataSource.

@Test
public void testDataSource() throws Exception {
    when(properties.get("allowedTypes", String[].class)).thenReturn(new String[] { "h3", "h4" });
    dataSourceServlet.doGet(context.request(), context.response());
    DataSource dataSource = (DataSource) context.request().getAttribute(DataSource.class.getName());
    assertNotNull(dataSource);
    dataSource.iterator().forEachRemaining(resource -> {
        assertTrue("Expected class", TextValueDataResourceSource.class.isAssignableFrom(resource.getClass()));
        TextValueDataResourceSource textValueDataResourceSource = (TextValueDataResourceSource) resource;
        assertTrue("Expected type in (h3, h4)", textValueDataResourceSource.getText().matches("h[3|4]"));
        assertTrue("Expected value in (h3, h4)", textValueDataResourceSource.getValue().matches("h[3|4]"));
    });
}
Also used : DataSource(com.adobe.granite.ui.components.ds.DataSource) Test(org.junit.Test)

Example 3 with DataSource

use of com.adobe.granite.ui.components.ds.DataSource in project aem-core-wcm-components by Adobe-Marketing-Cloud.

the class AllowedTitleSizesDataSourceServletTest method testDataSourceWithInvalidValues.

@Test
public void testDataSourceWithInvalidValues() throws Exception {
    when(properties.get("allowedTypes", String[].class)).thenReturn(new String[] { "foo", "h10" });
    dataSourceServlet.doGet(context.request(), context.response());
    DataSource dataSource = (DataSource) context.request().getAttribute(DataSource.class.getName());
    assertNotNull(dataSource);
    dataSource.iterator().forEachRemaining(resource -> {
        assertTrue("Expected class", TextValueDataResourceSource.class.isAssignableFrom(resource.getClass()));
        TextValueDataResourceSource textValueDataResourceSource = (TextValueDataResourceSource) resource;
        assertNull("Expected null type", textValueDataResourceSource.getText());
        assertTrue("Expected value in (foo, h10)", textValueDataResourceSource.getValue().matches("foo|h10"));
    });
}
Also used : DataSource(com.adobe.granite.ui.components.ds.DataSource) Test(org.junit.Test)

Example 4 with DataSource

use of com.adobe.granite.ui.components.ds.DataSource in project aem-core-wcm-components by Adobe-Marketing-Cloud.

the class VariationsDataSourceServletTest method testComponentPathNonExisting.

@Test
void testComponentPathNonExisting() throws ServletException, IOException {
    DataSource dataSource = getDataSource(servlet, DS_COMPONENT_PATH__NON_EXISTING);
    assertDataSource(dataSource, new String[0], new String[0]);
}
Also used : DataSource(com.adobe.granite.ui.components.ds.DataSource) Test(org.junit.jupiter.api.Test)

Example 5 with DataSource

use of com.adobe.granite.ui.components.ds.DataSource in project aem-core-wcm-components by Adobe-Marketing-Cloud.

the class VariationsDataSourceServletTest method testFragmentPathTextOnly.

@Test
void testFragmentPathTextOnly() throws ServletException, IOException {
    DataSource dataSource = getDataSource(servlet, DS_FRAGMENT_PATH_TEXT_ONLY);
    assertDataSource(dataSource, VARIATION_NAMES, VARIATION_TITLES);
}
Also used : DataSource(com.adobe.granite.ui.components.ds.DataSource) Test(org.junit.jupiter.api.Test)

Aggregations

DataSource (com.adobe.granite.ui.components.ds.DataSource)48 Test (org.junit.jupiter.api.Test)37 Resource (org.apache.sling.api.resource.Resource)14 SimpleDataSource (com.adobe.granite.ui.components.ds.SimpleDataSource)10 ValueMap (org.apache.sling.api.resource.ValueMap)6 EmptyDataSource (com.adobe.granite.ui.components.ds.EmptyDataSource)5 ResourceResolver (org.apache.sling.api.resource.ResourceResolver)5 LinkedList (java.util.LinkedList)3 ValueMapResource (com.adobe.granite.ui.components.ds.ValueMapResource)2 ArrayList (java.util.ArrayList)2 HashMap (java.util.HashMap)2 Test (org.junit.Test)2 DataSourceOption (com.adobe.acs.commons.wcm.datasources.DataSourceOption)1 ContentFragment (com.adobe.cq.dam.cfm.ContentFragment)1 CoreComponentTestContext (com.adobe.cq.wcm.core.components.context.CoreComponentTestContext)1 TextValueDataResourceSource (com.adobe.cq.wcm.core.components.internal.servlets.TextValueDataResourceSource)1 EmbeddableDescription (com.adobe.cq.wcm.core.components.internal.servlets.embed.EmbeddablesDataSourceServlet.EmbeddableDescription)1 MockStyle (com.adobe.cq.wcm.core.components.testing.MockStyle)1 Config (com.adobe.granite.ui.components.Config)1 Value (com.adobe.granite.ui.components.Value)1