public RouteTranslationBuilder AddDefaultTranslation() { ICollection <string> currentCultures = CurrentCultures; foreach (string culture in currentCultures) { CurrentCultures = new[] { culture }; IRouteProcessor routeProcessor = new CopyTemplateRouteProcessor(RouteTranslationConfiguration, LoggerFactory.CreateLogger <CopyTemplateRouteProcessor>()) { Culture = culture, }; RouteTranslationStore.Add(new RouteSelectorProcessorPair { Selector = CurrentRouteSelectorFunc(), Processor = routeProcessor, }); } CurrentCultures = currentCultures; return(this); }
public void BuildWithControllerSelectionBuildsCorrectTranslation() { CopyTemplateRouteProcessor routeProcessor = CreateRouteProcessor(); routeProcessor.Culture = TranslateControllerRouteProcessorBuilderTest.Culture; ApplicationModel applicationModel = TestApplicationModel.Instance; List <RouteSelection> routeSelections = new List <RouteSelection>() { new RouteSelection() { ControllerModel = applicationModel.Controller1(), ActionModels = new List <ActionModel>(), }, }; routeProcessor.Process(routeSelections); ControllerModel translatedController = applicationModel.Controllers.Last(controller => controller.ControllerName == "Controller1"); Assert.IsTrue(applicationModel.Controllers.Count(controller => controller.ControllerName == "Controller1") == 2); Assert.IsTrue(translatedController.Selectors.Count == 2); Assert.IsTrue(translatedController.Selectors.First().AttributeRouteModel.Template == $"[{TranslateControllerRouteProcessorBuilderTest.CultureKey}]/Controller1"); Assert.IsTrue(translatedController.Selectors.Last().AttributeRouteModel.Template == $"[{TranslateControllerRouteProcessorBuilderTest.CultureKey}]/Controller11"); Assert.IsTrue(translatedController.Actions.First().Selectors.Count == 0); }