Esempio n. 1
0
        public void ToBsonDocument_should_return_expected_result(
            [Values("en_US", "fr_CA")]
            string locale)
        {
            var subject = new Collation(locale);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument("locale", locale);

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 2
0
        public void ToBsonDocument_should_return_expected_result_when_strength_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, CollationStrength.Primary, CollationStrength.Identical)]
            CollationStrength?strength)
        {
            var subject = new Collation(locale, strength: strength);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "strength", () => Collation.ToInt32(strength.Value), strength.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 3
0
        public void ToBsonDocument_should_return_expected_result_when_numericOrdering_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, false, true)]
            bool?numericOrdering)
        {
            var subject = new Collation(locale, numericOrdering: numericOrdering);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "numericOrdering", () => numericOrdering.Value, numericOrdering.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 4
0
        public void ToBsonDocument_should_return_expected_result_when_maxVariable_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, CollationMaxVariable.Punctuation, CollationMaxVariable.Space)]
            CollationMaxVariable?maxVariable)
        {
            var subject = new Collation(locale, maxVariable: maxVariable);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "maxVariable", () => Collation.ToString(maxVariable.Value), maxVariable.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 5
0
        public void ToBsonDocument_should_return_expected_result_when_caseLevel_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, false, true)]
            bool?caseLevel)
        {
            var subject = new Collation(locale, caseLevel: caseLevel);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "caseLevel", () => caseLevel.Value, caseLevel.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 6
0
        public void ToBsonDocument_should_return_expected_result_when_caseFirst_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, CollationCaseFirst.Lower, CollationCaseFirst.Upper)]
            CollationCaseFirst?caseFirst)
        {
            var subject = new Collation(locale, caseFirst: caseFirst);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "caseFirst", () => Collation.ToString(caseFirst.Value), caseFirst.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 7
0
        public void ToBsonDocument_should_return_expected_result_when_backwards_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, false, true)]
            bool?backwards)
        {
            var subject = new Collation(locale, backwards: backwards);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "backwards", () => backwards.Value, backwards.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }
Esempio n. 8
0
        public void ToBsonDocument_should_return_expected_result_when_alternate_is_set(
            [Values("en_US", "fr_CA")]
            string locale,
            [Values(null, CollationAlternate.NonIgnorable, CollationAlternate.Shifted)]
            CollationAlternate?alternate)
        {
            var subject = new Collation(locale, alternate: alternate);

            var result = subject.ToBsonDocument();
            var json   = subject.ToString();

            var expectedResult = new BsonDocument
            {
                { "locale", locale },
                { "alternate", () => Collation.ToString(alternate.Value), alternate.HasValue }
            };

            result.Should().Be(expectedResult);
            json.Should().Be(expectedResult.ToJson());
        }