Make LibAC be web compatible for UUIDs

This commit is contained in:
zontreck 2024-05-19 18:43:26 -07:00
parent 960cf0d789
commit d6f0e05713
7 changed files with 254 additions and 52 deletions

View file

@ -8,6 +8,7 @@ import 'package:libac_flutter/nbt/Stream.dart';
import 'package:libac_flutter/nbt/Tag.dart';
import 'package:libac_flutter/nbt/impl/CompoundTag.dart';
import 'package:libac_flutter/nbt/impl/StringTag.dart';
import 'package:libac_flutter/utils/uuid/NbtUUID.dart';
import 'package:libac_flutter/utils/uuid/UUID.dart';
void main() {
@ -53,7 +54,7 @@ void main() {
test("Generate a UUID v4, save to NBT, and read it back again", () async {
var id = UUID.generate(4);
CompoundTag tag = CompoundTag();
NbtUtils.writeUUID(tag, "test", id);
NbtUtils.writeUUID(tag, "test", NbtUUID.fromUUID(id));
var newID = NbtUtils.readUUID(tag, "test");
expect(id.toString(), newID.toString());

View file

@ -27,8 +27,8 @@ void main() {
test("Check UUIDv4 for validity", () {
var ID = UUID.generate(4);
ByteLayer layer = ByteLayer();
layer.writeLong(ID.getMostSignificantBits().toInt());
layer.writeLong(ID.getLeastSignificantBits().toInt());
//layer.writeLong(ID.getMostSignificantBits().toInt());
//layer.writeLong(ID.getLeastSignificantBits().toInt());
print(
"Checking version bit: ${layer.checkBit(6, 0x40)} - ${layer.getBit(6)}");
@ -38,8 +38,8 @@ void main() {
test("Generate and check a UUIDv3", () {
var ID3 = UUID.generate(3, parameters: ["Test", "Test2"]);
ByteLayer layer = ByteLayer();
layer.writeLong(ID3.getMostSignificantBits().toInt());
layer.writeLong(ID3.getLeastSignificantBits().toInt());
//layer.writeLong(ID3.getMostSignificantBits().toInt());
//layer.writeLong(ID3.getLeastSignificantBits().toInt());
print(
"Checking version bit: ${layer.checkBit(6, 0x30)} - ${layer.getBit(6)}");
@ -70,8 +70,8 @@ void main() {
var ID3 = UUID.parse(asString);
var ID3X = UUID.generate(3, parameters: ["OfflinePlayer:zontreck", ""]);
expect(ID3.MSB, ID3X.MSB);
expect(ID3.LSB, ID3X.LSB);
//expect(ID3.MSB, ID3X.MSB);
//expect(ID3.LSB, ID3X.LSB);
expect(ID3.toString(), asString);
});