diff options
Diffstat (limited to 'jgvariant-ostree/src/test/java/eu')
| -rw-r--r-- | jgvariant-ostree/src/test/java/eu/mulk/jgvariant/ostree/OstreeDecoderTest.java | 45 | 
1 files changed, 43 insertions, 2 deletions
| diff --git a/jgvariant-ostree/src/test/java/eu/mulk/jgvariant/ostree/OstreeDecoderTest.java b/jgvariant-ostree/src/test/java/eu/mulk/jgvariant/ostree/OstreeDecoderTest.java index bca8142..75c5ea4 100644 --- a/jgvariant-ostree/src/test/java/eu/mulk/jgvariant/ostree/OstreeDecoderTest.java +++ b/jgvariant-ostree/src/test/java/eu/mulk/jgvariant/ostree/OstreeDecoderTest.java @@ -12,6 +12,8 @@ import com.adelean.inject.resources.junit.jupiter.TestWithResources;  import eu.mulk.jgvariant.core.Signature;  import eu.mulk.jgvariant.core.Variant;  import java.nio.ByteBuffer; +import java.util.Arrays; +import java.util.HexFormat;  import java.util.List;  import java.util.Map;  import org.junit.jupiter.api.Test; @@ -50,6 +52,7 @@ class OstreeDecoderTest {    void summaryDecoder() {      var decoder = Summary.decoder();      var summary = decoder.decode(ByteBuffer.wrap(summaryBytes)); +      assertAll(          () ->              assertEquals( @@ -64,8 +67,39 @@ class OstreeDecoderTest {                                  Map.of(                                      "ostree.commit.timestamp",                                      new Variant(Signature.parse("t"), 1640537170L)))))), -                summary.entries())); -    // FIXME: check metadata field +                summary.entries()), +        () -> +            assertEquals( +                Map.of( +                    "ostree.summary.last-modified", +                    new Variant(Signature.parse("t"), 1640537300L), +                    "ostree.summary.tombstone-commits", +                    new Variant(Signature.parse("b"), false), +                    "ostree.static-deltas", +                    new Variant( +                        Signature.parse("a{sv}"), +                        Map.of( +                            "3d3b3329dca38871f29aeda1bf5854d76c707fa269759a899d0985c91815fe6f-66ff167ff35ce87daac817447a9490a262ee75f095f017716a6eb1a9d9eb3350", +                            new Variant( +                                Signature.parse("ay"), +                                bytesOfHex( +                                    "03738040e28e7662e9c9d2599c530ea974e642c9f87e6c00cbaa39a0cdac8d44")), +                            "31c8835d5c9d2c6687a50091c85142d1b2d853ff416a9fb81b4ee30754510d52", +                            new Variant( +                                Signature.parse("ay"), +                                bytesOfHex( +                                    "f481144629474bd88c106e45ac405ebd75b324b0655af1aec14b31786ae1fd61")), +                            "31c8835d5c9d2c6687a50091c85142d1b2d853ff416a9fb81b4ee30754510d52-3d3b3329dca38871f29aeda1bf5854d76c707fa269759a899d0985c91815fe6f", +                            new Variant( +                                Signature.parse("ay"), +                                bytesOfHex( +                                    "2c6a07bc1cf4d7ce7d00f82d7d2d6d156fd0e31d476851b46dc2306b181b064a")))), +                    "ostree.summary.mode", +                    new Variant(Signature.parse("s"), "bare"), +                    "ostree.summary.indexed-deltas", +                    new Variant(Signature.parse("b"), true)), +                summary.metadata().fields())); +      System.out.println(summary);    } @@ -107,4 +141,11 @@ class OstreeDecoderTest {      System.out.println(deltaPartPayload);    } + +  private static List<Byte> bytesOfHex(String hex) { +    var bytes = HexFormat.of().parseHex(hex); +    var byteObjects = new Byte[bytes.length]; +    Arrays.setAll(byteObjects, i -> bytes[i]); +    return Arrays.asList(byteObjects); +  }  } | 
