1

我正在尝试单元测试 spring-data-mongodb 自定义转换器。我正在关注这份文件。根据文档,在 AbstractMongoConfiguration 类中应该有一个名为 afterMappingMongoConverterCreation 的方法,我们需要重写该方法来配置自定义转换器。有趣的是,在 1.3.1 版本中找不到该方法。(该文档为同一版本)同一文档还谈到了 MappingMongoConverter 中名为 setCustomConverters 的方法。我在 MappingMongoConverter 或它的超类中也看不到该方法。我在这里错过了什么吗?任何帮助深表感谢。

如果文档已过时,对客户转换器进行单元测试的最佳方法是什么?除了 XML 配置之外的任何选项?

4

1 回答 1

1

看起来文件有点过时了。我使用下面给定的代码修复了它。

@EnableMongoRepositories
@ComponentScan(basePackageClasses = { ItemRepository.class })
@PropertySource("classpath:application.properties")
static class MongoConfiguration extends AbstractMongoConfiguration {

    @Override
    protected String getDatabaseName() {
        return "scrumretro-test";
    }

    @Override
    public Mongo mongo() {
        return new Fongo("mongo-test").getMongo();
    }

    @Override
    protected String getMappingBasePackage() {
        return "com.scrumretro.repository.mongo";
    }

    @Bean
    public CustomConversions customConversions() {
        List<Converter<?, ?>> converters = new ArrayList<Converter<?, ?>>();
        converters.add(new ItemWriteConverter());
        return new CustomConversions(converters);
    }
}`
于 2013-10-30T20:04:19.553 回答