### Question:
ServiceConfigDAO { @RequiresSession public ServiceConfigEntity getLastServiceConfig(Long clusterId, String serviceName) { TypedQuery<ServiceConfigEntity> query = entityManagerProvider.get(). createQuery("SELECT scv FROM ServiceConfigEntity scv " + "WHERE scv.clusterId = ?1 AND scv.serviceName = ?2 " + "ORDER BY scv.createTimestamp DESC", ServiceConfigEntity.class); return daoUtils.selectOne(query, clusterId, serviceName); }  @RequiresSession ServiceConfigEntity find(Long serviceConfigId); @RequiresSession ServiceConfigEntity findByServiceAndVersion(String serviceName, Long version); @RequiresSession List<ServiceConfigEntity> findByService(Long clusterId, String serviceName); @RequiresSession List<ServiceConfigEntity> getLastServiceConfigVersionsForGroups(Collection<Long> configGroupIds); @RequiresSession ServiceConfigEntity getLastServiceConfigVersionsForGroup(Long configGroupId); @RequiresSession List<Long> getServiceConfigVersionsByConfig(Long clusterId, String configType, Long configVersion); @RequiresSession List<ServiceConfigEntity> getLastServiceConfigs(Long clusterId); @RequiresSession List<ServiceConfigEntity> getLastServiceConfigsForService(Long clusterId, String serviceName); @RequiresSession ServiceConfigEntity getLastServiceConfigForServiceDefaultGroup(Long clusterId, String serviceName); @RequiresSession List<ServiceConfigEntity> getServiceConfigsForServiceAndStack(Long clusterId,
      StackId stackId, String serviceName); @RequiresSession List<ServiceConfigEntity> getLatestServiceConfigs(Long clusterId,
      StackId stackId); @RequiresSession ServiceConfigEntity getLastServiceConfig(Long clusterId, String serviceName); @RequiresSession ServiceConfigEntity findMaxVersion(Long clusterId, String serviceName); @RequiresSession List<ServiceConfigEntity> getServiceConfigs(Long clusterId); @RequiresSession List<ServiceConfigEntity> findAll(); @RequiresSession Long findNextServiceConfigVersion(long clusterId, String serviceName); @Transactional void removeHostFromServiceConfigs(final Long hostId); @Transactional void create(ServiceConfigEntity serviceConfigEntity); @Transactional ServiceConfigEntity merge(ServiceConfigEntity serviceConfigEntity); @Transactional void remove(ServiceConfigEntity serviceConfigEntity);  }### Answer:
@Test public void testGetLastServiceConfig() throws Exception { createServiceConfig("HDFS", "admin", 1L, 1L, 1111L, null); createServiceConfig("HDFS", "admin", 2L, 2L, 2222L, null); createServiceConfig("YARN", "admin", 1L, 3L, 3333L, null); Long clusterId = clusterDAO.findByName("c1").getClusterId(); ServiceConfigEntity serviceConfigEntity = serviceConfigDAO.getLastServiceConfig(clusterId, "HDFS"); Assert.assertNotNull(serviceConfigEntity); Assert.assertEquals("c1", serviceConfigEntity.getClusterEntity().getClusterName()); Assert.assertEquals(clusterId, serviceConfigEntity.getClusterEntity() .getClusterId()); Assert.assertEquals("HDFS", serviceConfigEntity.getServiceName()); Assert.assertEquals(Long.valueOf(2222L), serviceConfigEntity.getCreateTimestamp()); Assert.assertEquals("admin", serviceConfigEntity.getUser()); Assert.assertEquals(Long.valueOf(2), serviceConfigEntity.getVersion()); Assert.assertTrue(serviceConfigEntity.getClusterConfigEntities().isEmpty()); Assert.assertNotNull(serviceConfigEntity.getServiceConfigId()); }