Exemple #1
0
        public void GenerateSampleTreeModel_SingleResource_NoSplitInKey()
        {
            var resources = new List <LocalizationResource>
            {
                new LocalizationResource("ThisIsResourceKey")
                {
                    Translations = new List <LocalizationResourceTranslation>
                    {
                        new LocalizationResourceTranslation // invariant
                        {
                            Language = "", Value = "Invariant"
                        },
                        new LocalizationResourceTranslation {
                            Language = "en", Value = "English"
                        },
                        new LocalizationResourceTranslation {
                            Language = "lv", Value = "Latvian"
                        }
                    }
                }
            };

            var languages = new[] { new CultureInfo("en"), new CultureInfo("lv") };

            var sut = new LocalizationResourceApiTreeModel(resources, languages, 100, 100, new UiOptions());

            var result = sut.ConvertToApiModel(resources);
            var first  = result.Single();

            Assert.NotNull(first);
            Assert.Equal("ThisIsResourceKey", first[_segmentPropertyName]);
        }
Exemple #2
0
        public void GenerateSampleTreeModel_SingleResource_MissingTranslation()
        {
            var resources = new List <LocalizationResource>
            {
                new LocalizationResource("This.Is.Resource.Key")
                {
                    Translations = new List <LocalizationResourceTranslation>
                    {
                        new LocalizationResourceTranslation // invariant
                        {
                            Language = "", Value = "Invariant"
                        },
                        new LocalizationResourceTranslation {
                            Language = "en", Value = "English"
                        },
                        new LocalizationResourceTranslation {
                            Language = "lv", Value = "Latvian"
                        }
                    }
                }
            };

            var languages = new[] { new CultureInfo("en"), new CultureInfo("lv"), new CultureInfo("no") };

            var sut = new LocalizationResourceApiTreeModel(resources, languages, 100, 100, new UiOptions());

            var result = sut.ConvertToApiModel(resources);
            var first  = result.Single();

            Assert.NotNull(first);
            Assert.Equal("This", first[_segmentPropertyName]);
            Assert.Equal("Invariant", result[0]["_children"][0]["_children"][0]["_children"][0]["translation"]);
            Assert.Null(((JValue)result[0]["_children"][0]["_children"][0]["_children"][0]["translation-no"]).Value);
        }
        public void GenerateSampleTreeModel_MultipleResources_SharedKeyRoots()
        {
            var resources = new List <LocalizationResource>
            {
                new LocalizationResource("This.Is.Resource.Key")
                {
                    Translations = new List <LocalizationResourceTranslation>
                    {
                        new LocalizationResourceTranslation                                     // invariant
                        {
                            Language = "",
                            Value    = "Invariant"
                        },
                        new LocalizationResourceTranslation
                        {
                            Language = "en",
                            Value    = "English"
                        },
                        new LocalizationResourceTranslation
                        {
                            Language = "lv",
                            Value    = "Latvian"
                        }
                    }
                },
                new LocalizationResource("This.Is.Resource.AnotherKey")
                {
                    Translations = new List <LocalizationResourceTranslation>
                    {
                        new LocalizationResourceTranslation                                     // invariant
                        {
                            Language = "",
                            Value    = "Invariant 2"
                        },
                        new LocalizationResourceTranslation
                        {
                            Language = "en",
                            Value    = "English 2"
                        },
                        new LocalizationResourceTranslation
                        {
                            Language = "lv",
                            Value    = "Latvian 2"
                        }
                    }
                }
            };

            var languages = new [] { new CultureInfo("en"), new CultureInfo("lv") };

            var sut = new LocalizationResourceApiTreeModel(resources, languages, 100, 100);

            var result = sut.ConvertToApiModel(resources);
            var first  = result.First();

            Assert.NotNull(first);
            Assert.Equal("Invariant", result[0]["_children"][0]["_children"][0]["_children"][0]["translation"]);
            Assert.Equal("Invariant 2", result[0]["_children"][0]["_children"][0]["_children"][1]["translation"]);
        }
        private LocalizationResourceApiTreeModel PrepareTreeViewModel()
        {
            var(resources, languages, isAdmin) = GetResources();
            var result = new LocalizationResourceApiTreeModel(resources, languages, _config.MaxResourceKeyPopupTitleLength, _config.MaxResourceKeyDisplayLength)
            {
                Options = { AdminMode = isAdmin, ShowInvariantCulture = _config.ShowInvariantCulture, ShowHiddenResources = _config.ShowHiddenResources }
            };

            return(result);
        }
        private LocalizationResourceApiTreeModel PrepareTreeViewModel()
        {
            var(resources, languages, isAdmin) = GetResources();
            var result = new LocalizationResourceApiTreeModel(resources,
                                                              languages,
                                                              _config.MaxResourceKeyPopupTitleLength,
                                                              _config.MaxResourceKeyDisplayLength,
                                                              BuildOptions(isAdmin));

            return(result);
        }