Số nguyên có được tạo bằng IFixture.Create<int>()
duy nhất không?Có phải số nguyên được tạo với AutoFixture 3 độc đáo không?
The Wiki says rằng con số này là ngẫu nhiên, nhưng nó cũng cho chúng ta biết này
Các số đầu tiên được tạo ra trong phạm vi của [1, 255], vì điều này là một tập hợp các giá trị mà có giá trị cho tất cả kiểu dữ liệu số. loại dữ liệu số nhỏ nhất trong .NET là System.Byte, phù hợp với phạm vi này.
Khi 255 số nguyên đầu tiên đã được sử dụng, các số sau đó được chọn được chọn từ phạm vi [256, 32767], tương ứng với số còn lại số dương có sẵn cho System.Int16.
Hai điều có liên quan tại GitHub:
https://github.com/AutoFixture/AutoFixture/issues/2
https://github.com/AutoFixture/AutoFixture/pull/7
Và những gì về những kiểm tra đơn vị?
https://github.com/AutoFixture/AutoFixture/blob/master/Src/AutoFixtureUnitTest/GeneratorTest.cs#L33
[Theory, ClassData(typeof(CountTestCases))]
public void StronglyTypedEnumerationYieldsUniqueValues(int count)
{
// Fixture setup
var sut = new Generator<T>(new Fixture());
// Exercise system
var actual = sut.Take(count);
// Verify outcome
Assert.Equal(count, actual.Distinct().Count());
// Teardown
}
https://github.com/AutoFixture/AutoFixture/blob/master/Src/AutoFixtureUnitTest/GeneratorTest.cs#L57
[Theory, ClassData(typeof(CountTestCases))]
public void WeaklyTypedEnumerationYieldsUniqueValues(int count)
{
// Fixture setup
IEnumerable sut = new Generator<T>(new Fixture());
// Exercise system
var actual = sut.OfType<T>().Take(count);
// Verify outcome
Assert.Equal(count, actual.Distinct().Count());
// Teardown
}
tôi đã không tìm thấy một tuyên bố nói rằng những con số được tạo ra là duy nhất, chỉ những bit thông tin rằng sẽ đề nghị đó, nhưng tôi có thể sai.