Example #1
0
        public void GetRouteDictionary_HasRouteDataParameterFunction_ReturnsSameValue()
        {
            var data = new HateoasSample();
            var linkBuilder = _sut.HasRouteData(x => new { id = x.Id, foreignKey = x.ForeignKeyId });
            var expected = new { id = data.Id, foreignKey = data.ForeignKeyId }.ToRouteDictionary();

            _sut.GetRouteDictionary(data).Should().BeEquivalentTo(expected);
        }
        /// <inheritdoc />
        public override IEnumerable<object[]> GetData(MethodInfo testMethod)
        {
            var testee = new HateoasSample();

            yield return new object[] { testee, new Func<HateoasSample, bool>(x => !string.IsNullOrWhiteSpace(x.Email)) };
            yield return new object[] { testee, new Func<HateoasSample, bool>(x => !string.IsNullOrWhiteSpace(x.DocumentNumber)) };
            yield return new object[] { testee, new Func<HateoasSample, bool>(x => !string.IsNullOrWhiteSpace(x.FileName)) };
            yield return new object[] { testee, new Func<HateoasSample, bool>(x => x.ForeignKeyId != Guid.Empty) };
        }
Example #3
0
        public override IEnumerable <object[]> GetData(MethodInfo testMethod)
        {
            var    data       = new HateoasSample();
            var    routeName  = nameof(data.DocumentNumber);
            object routeParam = data.Id;
            var    url        = $"http://dummy.test/api/dummy/{routeName}/{routeParam}";
            var    method     = "GET";

            yield return(new object[] { data, routeName, url, method });

            routeName = nameof(data.ZipCode);
            url       = $"http://dummy.test/api/dummy/{routeName}";
            method    = "POST";

            yield return(new object[] { data, routeName, url, method });

            routeParam = data.ProcessNumber;
            routeName  = nameof(data.ProcessNumber);
            url        = $"http://dummy.test/api/dummy/{routeName}/{routeParam}";
            method     = "PATCH";

            yield return(new object[] { data, routeName, url, method });

            routeName  = nameof(data.Email);
            routeParam = data.Email;
            url        = $"http://dummy.test/api/dummy/{routeName}/{routeParam}";
            method     = "DELETE";

            yield return(new object[] { data, routeName, url, method });

            routeName  = nameof(data.FileName);
            routeParam = data.FileName;
            url        = $"http://dummy.test/api/dummy/{routeName}/{routeParam}";
            method     = "PUT";

            yield return(new object[] { data, routeName, url, method });

            var routeData2 = new
            {
                id       = Guid.NewGuid(),
                label    = "test",
                page     = 21,
                pageSize = 10
            };

            routeName = "test6";
            var queryString = $"?pageSize={routeData2.pageSize}&page={routeData2.page}&label={routeData2.label}";

            url    = $"http://dummy.test/api/dummy/{routeName}{queryString}";
            method = "GET";

            yield return(new object[] { routeData2, routeName, url, method });
        }
Example #4
0
 public void IsApplicable_PredicateFunction_ReturnsSameValue(HateoasSample data, Func <HateoasSample, bool> function)
 {
     _sut.When(function).IsApplicable(data).Should().Be(function(data));
 }