public void Pluralize_check_user_pluralizations_in_pluralize()
        {
            var pluralizationService = new SpanishPluralizationService();

            pluralizationService.Pluralize("Cliente");

            Assert.Equal <string>("Clientes", pluralizationService.Pluralize("Clientes"));
        }
        public void Pluralize_user_directionary_entries_override_rules()
        {
            var pluralizationService = new SpanishPluralizationService(new List <CustomPluralizationEntry>()
            {
                new CustomPluralizationEntry(singular: "X", plural: "Y")
            });

            Assert.Equal("Y", pluralizationService.Pluralize("X"));
        }
        public void Pluralize_return_the_same_word_if_is_plural_in_custom_entries()
        {
            var customEntries = new CustomPluralizationEntry[]
            {
                new CustomPluralizationEntry("Plural", "Plurales")
            };

            var pluralizationService = new SpanishPluralizationService(customEntries);

            Assert.Equal <string>("Plurales", pluralizationService.Pluralize("Plural"));
        }
        public void Pluralize_return_capitalized_if_word_is_capitalized()
        {
            var pluralizationService = new SpanishPluralizationService();

            Assert.Equal("Peras", pluralizationService.Pluralize("Pera"));
        }
        public void Pluralize_check_irregular_word_list()
        {
            var pluralizationService = new SpanishPluralizationService();

            Assert.Equal("vermús", pluralizationService.Pluralize("vermú"));
        }
        public void Pluralize_return_the_same_word_if_is_plural_in_irregular_list()
        {
            var pluralizationService = new SpanishPluralizationService();

            Assert.Equal <string>("Albalaes", pluralizationService.Pluralize("Albalá"));
        }
        public void Pluralize_apply_pluralization_rules()
        {
            var pluralizationService = new SpanishPluralizationService();

            Assert.Equal("planos", pluralizationService.Pluralize("plano"));
            Assert.Equal("tribus", pluralizationService.Pluralize("tribu"));
            Assert.Equal("papás", pluralizationService.Pluralize("papá"));
            Assert.Equal("sofás", pluralizationService.Pluralize("sofá"));
            Assert.Equal("bisturíes", pluralizationService.Pluralize("bisturí"));
            Assert.Equal("tisúes", pluralizationService.Pluralize("tisú"));
            Assert.Equal("bueyes", pluralizationService.Pluralize("buey"));
            Assert.Equal("convoyes", pluralizationService.Pluralize("convoy"));
            Assert.Equal("pantis", pluralizationService.Pluralize("panty"));
            Assert.Equal("dandis", pluralizationService.Pluralize("dandy"));
            Assert.Equal("toses", pluralizationService.Pluralize("tos"));
            Assert.Equal("dóciles", pluralizationService.Pluralize("dócil"));
            Assert.Equal("colores", pluralizationService.Pluralize("color"));
            Assert.Equal("panes", pluralizationService.Pluralize("pan"));
            Assert.Equal("cracs", pluralizationService.Pluralize("crac"));
            Assert.Equal("zigzags", pluralizationService.Pluralize("zigzag"));
        }