private RequireMap GetMap(JObject document)
        {
            var map = new RequireMap();

            map.MapElements = new List <RequireMapElement>();
            string parseSection = "map";

            if (document != null && document[parseSection] != null)
            {
                JToken mapParent = JsonParseOrThrow <JObject>(document[parseSection], parseSection, Path, null);
                map.MapElements = mapParent.Select(
                    r =>
                {
                    var currentMap          = new RequireMapElement();
                    currentMap.Replacements = new List <RequireReplacement>();
                    var prop             = (JProperty)r;
                    currentMap.For       = prop.Name;
                    JToken mapDefinition = JsonParseOrThrow <JObject>(prop.Value, parseSection, Path, null);
                    if (mapDefinition != null)
                    {
                        currentMap.Replacements = mapDefinition.Select(x => new RequireReplacement()
                        {
                            OldKey = ((JProperty)x).Name,
                            NewKey = ((JProperty)x).Value.ToString()
                        }).ToList();
                    }

                    return(currentMap);
                })
                                  .ToList();
            }

            return(map);
        }
Example #2
0
        private RequireMap GetMap(JObject document)
        {
            var map = new RequireMap();

            map.MapElements = new List <RequireMapElement>();
            if (document != null && document["map"] != null)
            {
                map.MapElements = document["map"].Select(
                    r =>
                {
                    var currentMap          = new RequireMapElement();
                    currentMap.Replacements = new List <RequireReplacement>();
                    var prop          = (JProperty)r;
                    currentMap.For    = prop.Name;
                    var mapDefinition = prop.Value;
                    if (mapDefinition != null)
                    {
                        currentMap.Replacements = mapDefinition.Select(x => new RequireReplacement()
                        {
                            OldKey = ((JProperty)x).Name,
                            NewKey = ((JProperty)x).Value.ToString()
                        }).ToList();
                    }

                    return(currentMap);
                })
                                  .ToList();
            }

            return(map);
        }
        public void UniteMapElementsForSingleScript()
        {
            var firstMap = new RequireMapElement
            {
                For          = "scriptA",
                Replacements = new List <RequireReplacement>
                {
                    new RequireReplacement {
                        OldKey = "jquery", NewKey = "jquery.min"
                    }
                }
            };

            var secondMap = new RequireMapElement
            {
                For          = "scriptA",
                Replacements = new List <RequireReplacement>
                {
                    new RequireReplacement {
                        OldKey = "amplify", NewKey = "amplify.min"
                    }
                }
            };

            var firstCollection  = ConfigurationCreators.CreateCollectionWithMaps(firstMap);
            var secondCollection = ConfigurationCreators.CreateCollectionWithMaps(secondMap);

            var merger = ConfigurationCreators.CreateDefaultConfigMerger(firstCollection, secondCollection);
            var merged = merger.GetMerged();

            var expectedCollection = ConfigurationCreators.CreateEmptyCollection();

            expectedCollection.Map.MapElements.Add(new RequireMapElement
            {
                For          = "scriptA",
                Replacements = new List <RequireReplacement>
                {
                    new RequireReplacement {
                        OldKey = "jquery", NewKey = "jquery.min"
                    },
                    new RequireReplacement {
                        OldKey = "amplify", NewKey = "amplify.min"
                    }
                }
            });

            CustomAssert.JsonEquals(expectedCollection, merged);
        }
        public void ReadMap()
        {
            var config = ReadJson(new TestFileReader());
            var map    = new RequireMapElement
            {
                For          = "controllers/root/home/complexLoad",
                Replacements =
                    new List <RequireReplacement>
                {
                    new RequireReplacement
                    {
                        OldKey = "req1",
                        NewKey = "req2"
                    }
                }
            };
            var expected = ConfigurationCreators.CreateCollectionWithMaps(map);

            CustomAssert.JsonEquals(expected, config);
        }
        public void CreateSingleMapListForDifferentScripts()
        {
            var scriptAMap = new RequireMapElement
            {
                For          = "scriptA",
                Replacements = new List <RequireReplacement>
                {
                    new RequireReplacement {
                        OldKey = "jquery", NewKey = "jquery.min"
                    }
                }
            };

            var scriptBMap = new RequireMapElement
            {
                For          = "scriptB",
                Replacements = new List <RequireReplacement>
                {
                    new RequireReplacement {
                        OldKey = "jquery", NewKey = "jquery.custom"
                    }
                }
            };


            var firstCollection  = ConfigurationCreators.CreateCollectionWithMaps(scriptAMap);
            var secondCollection = ConfigurationCreators.CreateCollectionWithMaps(scriptBMap);

            var merger = ConfigurationCreators.CreateDefaultConfigMerger(firstCollection, secondCollection);
            var merged = merger.GetMerged();

            var expectedCollection = ConfigurationCreators.CreateEmptyCollection();

            expectedCollection.Map.MapElements.Add(scriptAMap);
            expectedCollection.Map.MapElements.Add(scriptBMap);

            CustomAssert.JsonEquals(expectedCollection, merged);
        }