是否可以使用自动混合和注入生成C#Dictionary

时间:2016-10-10 17:54:43

标签: c# unit-testing dictionary fixtures autofixture

是否可以使用autofixture注入实现类似的功能?

        // Fixture setup
        var fields = _fixture.CreateMany<CsvDbUpdateFieldModel>(1).ToList();
        _fixture.Inject(fields);

        var kvp = _fixture.CreateMany<KeyValuePair<int, IList<CsvDbUpdateFieldModel>>>(1);
        _fixture.Inject(kvp);

        var dictionary = _fixture.Create<IDictionary<int, IList<CsvDbUpdateFieldModel>>>();
        _fixture.Inject(dictionary);

        ...

我想要的是获得一个包含一个kvp的词典,其中IList<CsvDbUpdateFieldModel>包含1个元素,之前已声明过。但是现在AutoFixture创建IList<CsvDbUpdateFieldModel>有3个随机生成的项目,这可能不是我想要的。可能是AutoFixture Dictionary创建的一些细节应该对我有帮助..

我知道如何只创建一个,以及如何从头开始构建字典。我问如何使用注入机制

强制AutoFixture在kvp之前使用注入来自动构建字典

0 个答案:

没有答案