public void ShouldProvideFormattedValueString(string format)
            {
                // arrange
                var targetId        = Faker.Random.Long();
                var stronglyTypedId = new LongFor <Order>(targetId);

                // act
                var providedValue = stronglyTypedId.ToString(format);

                // assert
                providedValue.Should().Be(targetId.ToString(format));
            }
            public void ShouldProvideFormattedWithFormatterValueString(string format, CultureInfo cultureInfo)
            {
                // arrange
                var targetId                = Faker.Random.Long();
                var zeroId                  = new LongFor <Order>(0);
                var stronglyTypedId         = new LongFor <Order>(targetId);
                var oppositeStronglyTypedId = new LongFor <Order>(-1 * targetId);

                // act
                var results = new Dictionary <LongFor <Order>, string>()
                {
                    { zeroId, zeroId.ToString(format, cultureInfo) },
                    { stronglyTypedId, stronglyTypedId.ToString(format, cultureInfo) },
                    { oppositeStronglyTypedId, oppositeStronglyTypedId.ToString(format, cultureInfo) },
                };

                // assert
                foreach (var result in results)
                {
                    result.Value.Should().Be(result.Key.Value.ToString(format, cultureInfo));
                }
            }