public void can_override_the_arg_type() { var parameter = new RouteArgument("foo", 1); parameter.ArgType = typeof(int); parameter.ArgType.ShouldBe(typeof(int)); }
public void setting_the_member_changes_the_segment_key_name() { var arg = new RouteArgument("Key", 0); arg.MapToField <InputModel>("Number"); arg.ArgType.ShouldBe(typeof(int)); arg.Key.ShouldBe("Number"); }
public void happy_path() { var routeData = new Dictionary <string, object>(); var parameter = new RouteArgument("foo", 1); parameter.SetValues(routeData, "a/b/c/d".Split('/')); routeData["foo"].ShouldBe("b"); }
public void happy_path_with_number() { var routeData = new Dictionary <string, object>(); var parameter = new RouteArgument("foo", 1); parameter.ArgType = typeof(int); parameter.SetValues(routeData, "a/25/c/d".Split('/')); routeData["foo"].ShouldBe(25); }
public void create_route_parsing_frame_from_string_argument() { var arg = new RouteArgument("name", 1); arg.ArgType = typeof(string); var frame = arg.ToParsingFrame(null).ShouldBeOfType <CastRouteArgumentFrame>(); frame.ShouldNotBeNull(); frame.Position.ShouldBe(1); frame.Name.ShouldBe("name"); }
public void set_mapped_parameter() { var method = ReflectionHelper.GetMethod <SomeEndpoint>(x => x.go(null, 3)); var param = method.GetParameters().Last(); var arg = new RouteArgument("number", 0); arg.MappedParameter = param; arg.ArgType.ShouldBe(typeof(int)); arg.MappedParameter.ShouldBe(param); }
public void create_route_parsing_frame_from_string_argument() { var arg = new RouteArgument("name", 1); arg.ArgType = typeof(string); var frame = arg.ToParsingFrame().ShouldBeOfType <StringRouteArgument>(); ShouldBeNullExtensions.ShouldNotBeNull(frame); frame.Position.ShouldBe(1); frame.Name.ShouldBe("name"); }
public void get_parameters_from_property() { var arg = new RouteArgument("Key", 0); arg.MapToProperty <InputModel>(x => x.Color); arg.ReadRouteDataFromInput(new InputModel { Color = Color.Blue }) .ShouldBe("Blue"); }
public void read_route_data_from_arguments() { var method = ReflectionHelper.GetMethod <SomeEndpoint>(x => x.go(null, 3)); var param = method.GetParameters().Last(); var arg = new RouteArgument("number", 0); arg.MappedParameter = param; var arguments = MethodCallParser.ToArguments <SomeEndpoint>(x => x.go(null, 3)); arg.ReadRouteDataFromMethodArguments(arguments).ShouldBe("3"); }
public void get_parameters_from_number_field() { var arg = new RouteArgument("Key", 0); arg.MapToField <InputModel>("Number"); arg.ArgType.ShouldBe(typeof(int)); arg.ReadRouteDataFromInput(new InputModel { Number = 25 }) .ShouldBe("25"); }
public void get_parameters_from_field() { var arg = new RouteArgument("Key", 0); arg.MapToField <InputModel>("Key"); arg.ArgType.ShouldBe(typeof(string)); arg.ReadRouteDataFromInput(new InputModel { Key = "Rand" }) .ShouldBe("Rand"); }
public void create_route_parsing_from_int_argument() { var arg = new RouteArgument("age", 3) { ArgType = typeof(int) }; var frame = arg.ToParsingFrame(null).ShouldBeOfType <ParsedRouteArgumentFrame>(); frame.ShouldNotBeNull(); frame.Position.ShouldBe(3); frame.Variable.Usage.ShouldBe("age"); frame.Variable.VariableType.ShouldBe(typeof(int)); }
public void write_value_to_field() { var arg = new RouteArgument("Key", 0); arg.MapToField <InputModel>("Key"); var model = new InputModel(); var dict = new Dictionary <string, object>(); dict.Add(arg.Key, "Mat"); arg.ApplyRouteDataToInput(model, dict); model.Key.ShouldBe("Mat"); }
public void write_value_to_property() { var arg = new RouteArgument("Color", 2); arg.MapToProperty <InputModel>(x => x.Color); var model = new InputModel(); var dict = new Dictionary <string, object>(); dict.Add("Color", Color.Yellow); arg.ApplyRouteDataToInput(model, dict); model.Color.ShouldBe(Color.Yellow); }
public void the_default_arg_type_is_string() { var parameter = new RouteArgument("foo", 1); parameter.ArgType.ShouldBe(typeof(string)); }
public RouteArgumentExpectation(RouteArgument argument) { Position = argument.Position; ArgType = argument.ArgType; Key = argument.Key; }
public bool Find(Predicate<RouteArgument> predicate, out RouteArgument result) { return _cache.Find(predicate, out result); }
public void canonical_path() { var parameter = new RouteArgument("foo", 1); parameter.CanonicalPath().ShouldBe("*"); }