Search in sources :

Example 31 with Person

use of org.alfresco.rest.api.tests.client.data.Person in project alfresco-remote-api by Alfresco.

the class QueriesPeopleApiTest method checkApiCall.

private void checkApiCall(String term, String orderBy, String fields, Paging paging, int expectedStatus, List<String> expectedPeople, int... userIds) throws Exception {
    createParamIdNotNull(Queries.PARAM_TERM, term);
    createParamIdNotNull(Queries.PARAM_ORDERBY, orderBy);
    createParamIdNotNull(Queries.PARAM_FIELDS, fields);
    dummySearchServiceQueryNodeRefs.clear();
    for (int i : userIds) {
        NodeRef nodeRef = testPersonNodeRefs.get(i);
        dummySearchServiceQueryNodeRefs.add(nodeRef);
    }
    response = getAll(URL_QUERIES_LSP, paging, params, expectedStatus);
    if (expectedStatus == 200) {
        String termWithEscapedAsterisks = term.replaceAll("\\*", "\\\\*");
        String expectedQuery = "TYPE:\"{http://www.alfresco.org/model/content/1.0}person\" AND (\"*" + termWithEscapedAsterisks + "*\")";
        ArgumentCaptor<SearchParameters> searchParametersCaptor = ArgumentCaptor.forClass(SearchParameters.class);
        verify(mockSearchService, times(++callCountToMockSearchService)).query(searchParametersCaptor.capture());
        SearchParameters parameters = searchParametersCaptor.getValue();
        assertEquals("Query", expectedQuery, parameters.getQuery());
        people = Person.parsePeople(response.getJsonResponse()).getList();
        if (!expectedPeople.isEmpty()) {
            StringJoiner actual = new StringJoiner("\n");
            StringJoiner expected = new StringJoiner("\n");
            for (String people : expectedPeople) {
                expected.add(people);
            }
            for (Person person : people) {
                actual.add(person.toString());
            }
            String exp = expected.toString().replaceAll(TEST_TERM_PREFIX, "");
            String act = actual.toString().replaceAll(TEST_TERM_PREFIX, "");
            assertEquals(exp, act);
        }
    }
}
Also used : NodeRef(org.alfresco.service.cmr.repository.NodeRef) SearchParameters(org.alfresco.service.cmr.search.SearchParameters) Person(org.alfresco.rest.api.tests.client.data.Person) StringJoiner(java.util.StringJoiner)

Aggregations

Person (org.alfresco.rest.api.tests.client.data.Person)31 RequestContext (org.alfresco.rest.api.tests.client.RequestContext)25 Test (org.junit.Test)25 PublicApiClient (org.alfresco.rest.api.tests.client.PublicApiClient)10 HashMap (java.util.HashMap)9 LinkedList (java.util.LinkedList)8 HttpResponse (org.alfresco.rest.api.tests.client.HttpResponse)8 NodeRef (org.alfresco.service.cmr.repository.NodeRef)7 ArrayList (java.util.ArrayList)6 PublicApiException (org.alfresco.rest.api.tests.client.PublicApiException)6 JSONObject (org.json.simple.JSONObject)6 Map (java.util.Map)5 TestNetwork (org.alfresco.rest.api.tests.RepoService.TestNetwork)5 Serializable (java.io.Serializable)4 List (java.util.List)4 Company (org.alfresco.rest.api.tests.client.data.Company)4 QName (org.alfresco.service.namespace.QName)4 Date (java.util.Date)3 Iterator (java.util.Iterator)3 MimeMessage (javax.mail.internet.MimeMessage)3