Exemple #1
0
        public void Should_remove_deleted_references_from_assets_field()
        {
            var id1 = Guid.NewGuid();
            var id2 = Guid.NewGuid();

            var sut = Fields.Assets(1, "my-asset", Partitioning.Invariant);

            var result = sut.CleanReferences(CreateValue(id1, id2), HashSet.Of(id2));

            Assert.Equal(CreateValue(id1), result);
        }
        public void Should_return_ids_from_assets_field()
        {
            var id1 = Guid.NewGuid();
            var id2 = Guid.NewGuid();

            var sut = Fields.Assets(1, "my-asset", Partitioning.Invariant);

            var result = sut.ExtractReferences(CreateValue(id1, id2)).ToArray();

            Assert.Equal(new[] { id1, id2 }, result);
        }
Exemple #3
0
        public void Should_not_convert_nested_asset_ids_when_field_name_does_not_match(string path)
        {
            var field = Fields.Array(1, "parent", Partitioning.Invariant, Fields.Assets(11, "assets"));

            var source = JsonValue.Array(id1, id2);

            var expected = source;

            var result = ValueConverters.ResolveAssetUrls(HashSet.Of(path), urlGenerator)(source, field.Fields[0], field);

            Assert.Equal(expected, result);
        }
Exemple #4
0
        public void Should_convert_asset_ids_to_urls(string path)
        {
            var field = Fields.Assets(1, "assets", Partitioning.Invariant);

            var source = JsonValue.Array(id1, id2);

            var expected = JsonValue.Array($"url/to/{id1}", $"url/to/{id2}");

            var result = ValueConverters.ResolveAssetUrls(HashSet.Of(path), urlGenerator)(source, field);

            Assert.Equal(expected, result);
        }
Exemple #5
0
        public void Should_return_same_token_from_assets_field_when_removing_references_and_nothing_to_remove()
        {
            var id1 = Guid.NewGuid();
            var id2 = Guid.NewGuid();

            var sut = Fields.Assets(1, "my-asset", Partitioning.Invariant);

            var token  = CreateValue(id1, id2);
            var result = sut.CleanReferences(token, HashSet.Of(Guid.NewGuid()));

            Assert.Same(token, result);
        }
        public void Should_not_convert_asset_ids_if_field_name_does_not_match(string path)
        {
            var field = Fields.Assets(1, "assets", Partitioning.Invariant);

            var source = JsonValue.Array(id1, id2);

            var expected = source;

            var result = ValueConverters.ResolveAssetUrls(appId, HashSet.Of(path), urlGenerator)(source, field, null);

            Assert.Equal(expected, result);
        }
Exemple #7
0
        public void Should_not_convert_asset_ids_to_urls_when_fields_is_null()
        {
            var field = Fields.Assets(1, "assets", Partitioning.Invariant);

            var source =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array("1", "2"));

            var expected =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array("1", "2"));

            var result = FieldConverters.ResolveAssetUrls(null, assetUrlGenerator)(source, field);

            Assert.Equal(expected, result);
        }
Exemple #8
0
        public void Should_convert_asset_ids_to_urls_for_wildcard_fields()
        {
            var field = Fields.Assets(1, "assets", Partitioning.Invariant);

            var source =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array("1", "2"));

            var expected =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array("url/to/1", "url/to/2"));

            var result = FieldConverters.ResolveAssetUrls(new HashSet <string>(new[] { "*" }), assetUrlGenerator)(source, field);

            Assert.Equal(expected, result);
        }
        public void Should_not_convert_asset_ids_to_urls_when_field_does_not_match()
        {
            var field = Fields.Assets(1, "assets", Partitioning.Invariant);

            var source =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array(id1, id2));

            var expected =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array(id1, id2));

            var result = FieldConverters.ResolveAssetUrls(new HashSet <string>(new[] { "other" }), urlGenerato)(source, field);

            Assert.Equal(expected, result);
        }
        public void Should_convert_nested_asset_ids_to_urls_for_wildcard_fields()
        {
            var field =
                Fields.Array(1, "array", Partitioning.Invariant,
                             Fields.Assets(1, "assets"));

            var source =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array(
                                  JsonValue.Object()
                                  .Add("assets", JsonValue.Array(id1, id2))));

            var expected =
                new ContentFieldData()
                .AddJsonValue(JsonValue.Array(
                                  JsonValue.Object()
                                  .Add("assets", JsonValue.Array($"url/to/{id1}", $"url/to/{id2}"))));

            var result = FieldConverters.ResolveAssetUrls(new HashSet <string>(new[] { "*" }), urlGenerato)(source, field);

            Assert.Equal(expected, result);
        }
        public void Should_convert_nested_asset_ids_to_urls()
        {
            var field =
                Fields.Array(1, "array", Partitioning.Invariant,
                             Fields.Assets(1, "assets"));

            var source =
                new ContentFieldData()
                .AddValue("iv", JsonValue.Array(
                              JsonValue.Object()
                              .Add("assets", JsonValue.Array("1", "2"))));

            var expected =
                new ContentFieldData()
                .AddValue("iv", JsonValue.Array(
                              JsonValue.Object()
                              .Add("assets", JsonValue.Array("url/to/1", "url/to/2"))));

            var result = FieldConverters.ResolveAssetUrls(new HashSet <string>(new[] { "array.assets" }), assetUrlGenerator)(source, field);

            Assert.Equal(expected, result);
        }
Exemple #12
0
        public static IEnumerable <object[]> ReferencingFields()
        {
            yield return(new object[] { Fields.References(1, "my-refs", Partitioning.Invariant) });

            yield return(new object[] { Fields.Assets(1, "my-assets", Partitioning.Invariant) });
        }
Exemple #13
0
        public static IEnumerable <object[]> ReferencingNestedFields()
        {
            yield return(new object[] { Fields.References(1, "my-refs") });

            yield return(new object[] { Fields.Assets(1, "my-assets") });
        }
 private static RootField <AssetsFieldProperties> Field(AssetsFieldProperties properties)
 {
     return(Fields.Assets(1, "my-assets", Partitioning.Invariant, properties));
 }