@Test
    void testPossibleUserAttributeNames() {
        val impl = new SingleRowJdbcPersonAttributeDao(testDataSource, "SELECT name, email, shirt_color FROM user_table WHERE {0}");
        impl.setQueryAttributeMapping(Map.of("uid", "netid"));

        val columnsToAttributes = new HashMap<String, Object>();
        columnsToAttributes.put("name", "firstName");

        val emailAttributeNames = new HashSet<String>();
        emailAttributeNames.add("email");
        emailAttributeNames.add("emailAddress");
        columnsToAttributes.put("email", emailAttributeNames);
        columnsToAttributes.put("shirt_color", "dressShirtColor");
        impl.setResultAttributeMapping(columnsToAttributes);

        val expectedAttributeNames = new HashSet<String>();
        expectedAttributeNames.add("firstName");
        expectedAttributeNames.add("email");
        expectedAttributeNames.add("emailAddress");
        expectedAttributeNames.add("dressShirtColor");

        val attributeNames = impl.getPossibleUserAttributeNames(PersonAttributeDaoFilter.alwaysChoose());
        assertEquals(attributeNames, expectedAttributeNames);
    }
Test the {@link SingleRowJdbcPersonAttributeDao} against a dummy DataSource.

@author andrew.petro@yale.edu
@author Eric Dalquist
@since 7.1.0
support/cas-server-support-jdbc-authentication/src/test/java/org/apereo/cas/jdbc/SingleRowJdbcPersonAttributeDaoTests.java