@magicblock-labs/ephemeral-rollups-sdk 0.8.8 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,14 @@ const vitest_1 = require("vitest");
4
4
  const web3_js_1 = require("@solana/web3.js");
5
5
  const delegation_program_1 = require("../instructions/delegation-program");
6
6
  const magic_program_1 = require("../instructions/magic-program");
7
+ const ephemeral_spl_token_program_1 = require("../instructions/ephemeral-spl-token-program");
7
8
  const constants_1 = require("../constants");
9
+ function readLengthPrefixedField(data, offset) {
10
+ const len = data[offset];
11
+ const start = offset + 1;
12
+ const end = start + len;
13
+ return [Buffer.from(data.subarray(start, end)), end];
14
+ }
8
15
  (0, vitest_1.describe)("Exposed Instructions (web3.js)", () => {
9
16
  const mockPublicKey = new web3_js_1.PublicKey("11111111111111111111111111111111");
10
17
  const differentKey = new web3_js_1.PublicKey("11111111111111111111111111111112");
@@ -179,6 +186,18 @@ const constants_1 = require("../constants");
179
186
  (0, vitest_1.expect)(instruction.data.readUInt32LE(12)).toBe(2);
180
187
  });
181
188
  });
189
+ (0, vitest_1.describe)("initRentPdaIx (Ephemeral SPL Token Program)", () => {
190
+ (0, vitest_1.it)("should derive and initialize the global rent PDA", () => {
191
+ const [rentPda] = (0, ephemeral_spl_token_program_1.deriveRentPda)();
192
+ const instruction = (0, ephemeral_spl_token_program_1.initRentPdaIx)(mockPublicKey, rentPda);
193
+ (0, vitest_1.expect)(instruction.programId.toBase58()).toBe(constants_1.EPHEMERAL_SPL_TOKEN_PROGRAM_ID.toBase58());
194
+ (0, vitest_1.expect)(instruction.keys).toHaveLength(3);
195
+ (0, vitest_1.expect)(instruction.keys[0].pubkey.toBase58()).toBe(mockPublicKey.toBase58());
196
+ (0, vitest_1.expect)(instruction.keys[0].isSigner).toBe(true);
197
+ (0, vitest_1.expect)(instruction.keys[1].pubkey.toBase58()).toBe(rentPda.toBase58());
198
+ (0, vitest_1.expect)(instruction.data).toEqual(Buffer.from([23]));
199
+ });
200
+ });
182
201
  (0, vitest_1.describe)("topUpEscrow instruction", () => {
183
202
  (0, vitest_1.it)("should create a topUpEscrow instruction with all parameters", () => {
184
203
  const instruction = (0, delegation_program_1.createTopUpEscrowInstruction)(mockPublicKey, mockPublicKey, mockPublicKey, 1000000, 255);
@@ -430,5 +449,374 @@ const constants_1 = require("../constants");
430
449
  });
431
450
  });
432
451
  });
452
+ (0, vitest_1.describe)("delegateSpl (Ephemeral SPL Token Program)", () => {
453
+ const owner = new web3_js_1.PublicKey("11111111111111111111111111111113");
454
+ const mint = new web3_js_1.PublicKey("11111111111111111111111111111114");
455
+ const validator = new web3_js_1.PublicKey("11111111111111111111111111111115");
456
+ (0, vitest_1.it)("should delegate the vault eata when initializing the vault in legacy flow", async () => {
457
+ const [vault] = (0, ephemeral_spl_token_program_1.deriveVault)(mint);
458
+ const [vaultEphemeralAta] = (0, ephemeral_spl_token_program_1.deriveEphemeralAta)(vault, mint);
459
+ const instructions = await (0, ephemeral_spl_token_program_1.delegateSpl)(owner, mint, 1n, {
460
+ validator,
461
+ initIfMissing: true,
462
+ initVaultIfMissing: true,
463
+ idempotent: false,
464
+ });
465
+ (0, vitest_1.expect)(instructions[3].keys[1].pubkey.toBase58()).toBe(vaultEphemeralAta.toBase58());
466
+ (0, vitest_1.expect)(instructions[3].data[0]).toBe(4);
467
+ (0, vitest_1.expect)(Buffer.from(instructions[3].data.subarray(1)).equals(validator.toBuffer())).toBe(true);
468
+ });
469
+ (0, vitest_1.it)("should delegate the vault eata when initializing the vault in idempotent flow", async () => {
470
+ const [vault] = (0, ephemeral_spl_token_program_1.deriveVault)(mint);
471
+ const [vaultEphemeralAta] = (0, ephemeral_spl_token_program_1.deriveEphemeralAta)(vault, mint);
472
+ const instructions = await (0, ephemeral_spl_token_program_1.delegateSpl)(owner, mint, 1n, {
473
+ validator,
474
+ initVaultIfMissing: true,
475
+ shuttleId: 7,
476
+ });
477
+ (0, vitest_1.expect)(instructions[2].keys[1].pubkey.toBase58()).toBe(vaultEphemeralAta.toBase58());
478
+ (0, vitest_1.expect)(instructions[2].data[0]).toBe(4);
479
+ (0, vitest_1.expect)(Buffer.from(instructions[2].data.subarray(1)).equals(validator.toBuffer())).toBe(true);
480
+ });
481
+ (0, vitest_1.it)("should use setup_and_delegate_shuttle_with_merge in idempotent flow when amount is nonzero", async () => {
482
+ const instructions = await (0, ephemeral_spl_token_program_1.delegateSpl)(owner, mint, 1n, {
483
+ validator,
484
+ shuttleId: 7,
485
+ });
486
+ const setupAndDelegateInstruction = instructions.find((ix) => ix.data[0] === 24);
487
+ (0, vitest_1.expect)(setupAndDelegateInstruction).toBeDefined();
488
+ if (setupAndDelegateInstruction == null) {
489
+ throw new Error("Expected setup_and_delegate instruction");
490
+ }
491
+ (0, vitest_1.expect)(setupAndDelegateInstruction?.keys).toHaveLength(19);
492
+ (0, vitest_1.expect)(instructions.find((ix) => ix.data[0] === 11)).toBeUndefined();
493
+ (0, vitest_1.expect)(Buffer.from(setupAndDelegateInstruction.data).readBigUInt64LE(5)).toBe(1n);
494
+ (0, vitest_1.expect)(Buffer.from(setupAndDelegateInstruction.data.subarray(13)).equals(validator.toBuffer())).toBe(true);
495
+ });
496
+ (0, vitest_1.it)("should keep the shuttle eata writable in the zero-amount shuttle setup flow", async () => {
497
+ const [shuttleEphemeralAta] = (0, ephemeral_spl_token_program_1.deriveShuttleEphemeralAta)(owner, mint, 7);
498
+ const [shuttleAta] = (0, ephemeral_spl_token_program_1.deriveShuttleAta)(shuttleEphemeralAta, mint);
499
+ const instructions = await (0, ephemeral_spl_token_program_1.delegateSpl)(owner, mint, 0n, {
500
+ validator,
501
+ shuttleId: 7,
502
+ });
503
+ const initShuttleInstruction = instructions.find((ix) => ix.data[0] === 11);
504
+ const delegateShuttleInstruction = instructions.find((ix) => ix.data[0] === 13);
505
+ (0, vitest_1.expect)(initShuttleInstruction).toBeDefined();
506
+ (0, vitest_1.expect)(delegateShuttleInstruction).toBeDefined();
507
+ (0, vitest_1.expect)(initShuttleInstruction?.keys[2].pubkey.toBase58()).toBe(shuttleAta.toBase58());
508
+ (0, vitest_1.expect)(delegateShuttleInstruction?.keys[2].pubkey.toBase58()).toBe(shuttleAta.toBase58());
509
+ (0, vitest_1.expect)(initShuttleInstruction?.keys[2].isWritable).toBe(true);
510
+ (0, vitest_1.expect)(delegateShuttleInstruction?.keys[2].isWritable).toBe(true);
511
+ });
512
+ });
513
+ (0, vitest_1.describe)("delegateSplWithPrivateTransfer (Ephemeral SPL Token Program)", () => {
514
+ const owner = new web3_js_1.PublicKey("11111111111111111111111111111113");
515
+ const mint = new web3_js_1.PublicKey("11111111111111111111111111111114");
516
+ const validator = web3_js_1.Keypair.generate().publicKey;
517
+ (0, vitest_1.it)("should use the private transfer shuttle flow", async () => {
518
+ const instructions = await (0, ephemeral_spl_token_program_1.delegateSplWithPrivateTransfer)(owner, mint, 1n, {
519
+ validator,
520
+ shuttleId: 7,
521
+ initTransferQueueIfMissing: true,
522
+ minDelayMs: 100n,
523
+ maxDelayMs: 300n,
524
+ split: 4,
525
+ });
526
+ const privateTransferInstruction = instructions.find((ix) => ix.data[0] === 25);
527
+ (0, vitest_1.expect)(instructions.find((ix) => ix.data[0] === 12)).toBeDefined();
528
+ (0, vitest_1.expect)(privateTransferInstruction).toBeDefined();
529
+ if (privateTransferInstruction == null) {
530
+ throw new Error("Expected private transfer instruction");
531
+ }
532
+ (0, vitest_1.expect)(privateTransferInstruction?.keys).toHaveLength(19);
533
+ const data = Buffer.from(privateTransferInstruction.data);
534
+ (0, vitest_1.expect)(data.readUInt32LE(1)).toBe(7);
535
+ (0, vitest_1.expect)(data.readBigUInt64LE(5)).toBe(1n);
536
+ const [validatorField, nextOffset] = readLengthPrefixedField(data, 13);
537
+ const [destinationField, suffixOffset] = readLengthPrefixedField(data, nextOffset);
538
+ const [suffixField, endOffset] = readLengthPrefixedField(data, suffixOffset);
539
+ (0, vitest_1.expect)(validatorField.equals(validator.toBuffer())).toBe(true);
540
+ (0, vitest_1.expect)(destinationField).toHaveLength(80);
541
+ (0, vitest_1.expect)(suffixField).toHaveLength(69);
542
+ (0, vitest_1.expect)(endOffset).toBe(data.length);
543
+ });
544
+ });
545
+ (0, vitest_1.describe)("withdrawSpl (Ephemeral SPL Token Program)", () => {
546
+ const owner = new web3_js_1.PublicKey("11111111111111111111111111111113");
547
+ const mint = new web3_js_1.PublicKey("11111111111111111111111111111114");
548
+ const validator = new web3_js_1.PublicKey("11111111111111111111111111111115");
549
+ (0, vitest_1.it)("should use the delegated shuttle withdrawal flow when idempotent", async () => {
550
+ const instructions = await (0, ephemeral_spl_token_program_1.withdrawSpl)(owner, mint, 1n, {
551
+ validator,
552
+ shuttleId: 7,
553
+ });
554
+ const withdrawInstruction = instructions.find((ix) => ix.data[0] === 26);
555
+ (0, vitest_1.expect)(withdrawInstruction).toBeDefined();
556
+ (0, vitest_1.expect)(withdrawInstruction?.keys).toHaveLength(16);
557
+ (0, vitest_1.expect)(instructions.find((ix) => ix.data[0] === 3)).toBeUndefined();
558
+ });
559
+ (0, vitest_1.it)("should fall back to the legacy withdraw instruction when idempotent is false", async () => {
560
+ const instructions = await (0, ephemeral_spl_token_program_1.withdrawSpl)(owner, mint, 1n, {
561
+ idempotent: false,
562
+ });
563
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
564
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(3);
565
+ });
566
+ });
567
+ (0, vitest_1.describe)("transferSpl (Ephemeral SPL Token Program)", () => {
568
+ const from = web3_js_1.Keypair.generate().publicKey;
569
+ const to = web3_js_1.Keypair.generate().publicKey;
570
+ const mint = web3_js_1.Keypair.generate().publicKey;
571
+ const validator = web3_js_1.Keypair.generate().publicKey;
572
+ (0, vitest_1.it)("should use the shuttle private transfer instruction for private base-to-base transfers", async () => {
573
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
574
+ visibility: "private",
575
+ fromBalance: "base",
576
+ toBalance: "base",
577
+ validator,
578
+ shuttleId: 7,
579
+ privateTransfer: {
580
+ minDelayMs: 100n,
581
+ maxDelayMs: 300n,
582
+ split: 4,
583
+ },
584
+ });
585
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
586
+ const data = Buffer.from(instructions[0].data);
587
+ (0, vitest_1.expect)(data[0]).toBe(25);
588
+ (0, vitest_1.expect)(instructions[0].keys).toHaveLength(19);
589
+ (0, vitest_1.expect)(data.readUInt32LE(1)).toBe(7);
590
+ (0, vitest_1.expect)(data.readBigUInt64LE(5)).toBe(25n);
591
+ const [validatorField, nextOffset] = readLengthPrefixedField(data, 13);
592
+ const [destinationField, suffixOffset] = readLengthPrefixedField(data, nextOffset);
593
+ const [suffixField, endOffset] = readLengthPrefixedField(data, suffixOffset);
594
+ (0, vitest_1.expect)(validatorField.equals(validator.toBuffer())).toBe(true);
595
+ (0, vitest_1.expect)(destinationField).toHaveLength(80);
596
+ (0, vitest_1.expect)(suffixField).toHaveLength(69);
597
+ (0, vitest_1.expect)(endOffset).toBe(data.length);
598
+ });
599
+ (0, vitest_1.it)("should initialize the destination ATA and vault when requested", async () => {
600
+ const [vault] = (0, ephemeral_spl_token_program_1.deriveVault)(mint);
601
+ const [vaultEphemeralAta] = (0, ephemeral_spl_token_program_1.deriveEphemeralAta)(vault, mint);
602
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
603
+ visibility: "private",
604
+ fromBalance: "base",
605
+ toBalance: "base",
606
+ validator,
607
+ shuttleId: 7,
608
+ initIfMissing: true,
609
+ initVaultIfMissing: true,
610
+ privateTransfer: {
611
+ minDelayMs: 100n,
612
+ maxDelayMs: 300n,
613
+ split: 4,
614
+ },
615
+ });
616
+ (0, vitest_1.expect)(instructions).toHaveLength(4);
617
+ (0, vitest_1.expect)(instructions[2].keys[1].pubkey.toBase58()).toBe(vaultEphemeralAta.toBase58());
618
+ (0, vitest_1.expect)(instructions[2].data[0]).toBe(4);
619
+ (0, vitest_1.expect)(instructions[3].data[0]).toBe(25);
620
+ });
621
+ (0, vitest_1.it)("should prepend source ATA creation when initAtasIfMissing is set on base-source transfers", async () => {
622
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
623
+ visibility: "public",
624
+ fromBalance: "base",
625
+ toBalance: "base",
626
+ initAtasIfMissing: true,
627
+ });
628
+ (0, vitest_1.expect)(instructions).toHaveLength(2);
629
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(1);
630
+ (0, vitest_1.expect)(instructions[0].keys[2].pubkey.toBase58()).toBe(from.toBase58());
631
+ (0, vitest_1.expect)(instructions[1].data[0]).toBe(3);
632
+ });
633
+ (0, vitest_1.it)("should use the shuttle merge instruction for private base-to-ephemeral transfers", async () => {
634
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
635
+ visibility: "private",
636
+ fromBalance: "base",
637
+ toBalance: "ephemeral",
638
+ validator,
639
+ shuttleId: 7,
640
+ });
641
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
642
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(24);
643
+ (0, vitest_1.expect)(instructions[0].keys).toHaveLength(19);
644
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(5)).toBe(25n);
645
+ });
646
+ (0, vitest_1.it)("should initialize and delegate the receiver eata for private base-to-ephemeral transfers when requested", async () => {
647
+ const [toEphemeralAta] = (0, ephemeral_spl_token_program_1.deriveEphemeralAta)(to, mint);
648
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
649
+ visibility: "private",
650
+ fromBalance: "base",
651
+ toBalance: "ephemeral",
652
+ validator,
653
+ shuttleId: 7,
654
+ initIfMissing: true,
655
+ });
656
+ (0, vitest_1.expect)(instructions).toHaveLength(4);
657
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(1);
658
+ (0, vitest_1.expect)(instructions[0].keys[2].pubkey.toBase58()).toBe(to.toBase58());
659
+ (0, vitest_1.expect)(instructions[1].data[0]).toBe(0);
660
+ (0, vitest_1.expect)(instructions[1].keys[0].pubkey.toBase58()).toBe(toEphemeralAta.toBase58());
661
+ (0, vitest_1.expect)(instructions[2].data[0]).toBe(4);
662
+ (0, vitest_1.expect)(instructions[2].keys[1].pubkey.toBase58()).toBe(toEphemeralAta.toBase58());
663
+ (0, vitest_1.expect)(instructions[3].data[0]).toBe(24);
664
+ });
665
+ (0, vitest_1.it)("should ignore initAtasIfMissing on ephemeral-source transfers", async () => {
666
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
667
+ visibility: "private",
668
+ fromBalance: "ephemeral",
669
+ toBalance: "base",
670
+ initAtasIfMissing: true,
671
+ privateTransfer: {
672
+ minDelayMs: 100n,
673
+ maxDelayMs: 300n,
674
+ split: 4,
675
+ },
676
+ });
677
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
678
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(16);
679
+ });
680
+ (0, vitest_1.it)("should use depositAndQueueTransferIx for private ephemeral-to-base transfers", async () => {
681
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
682
+ visibility: "private",
683
+ fromBalance: "ephemeral",
684
+ toBalance: "base",
685
+ initIfMissing: true,
686
+ initVaultIfMissing: true,
687
+ privateTransfer: {
688
+ minDelayMs: 100n,
689
+ maxDelayMs: 300n,
690
+ split: 4,
691
+ },
692
+ });
693
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
694
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(16);
695
+ (0, vitest_1.expect)(instructions[0].keys).toHaveLength(8);
696
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(1)).toBe(25n);
697
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(9)).toBe(100n);
698
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(17)).toBe(300n);
699
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readUInt32LE(25)).toBe(4);
700
+ });
701
+ (0, vitest_1.it)("should use a normal transfer for public base-to-base transfers", async () => {
702
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
703
+ visibility: "public",
704
+ fromBalance: "base",
705
+ toBalance: "base",
706
+ });
707
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
708
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(3);
709
+ (0, vitest_1.expect)(instructions[0].keys).toHaveLength(3);
710
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(1)).toBe(25n);
711
+ });
712
+ (0, vitest_1.it)("should use a normal transfer for public ephemeral-to-ephemeral transfers", async () => {
713
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
714
+ visibility: "public",
715
+ fromBalance: "ephemeral",
716
+ toBalance: "ephemeral",
717
+ });
718
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
719
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(3);
720
+ (0, vitest_1.expect)(instructions[0].keys).toHaveLength(3);
721
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(1)).toBe(25n);
722
+ });
723
+ (0, vitest_1.it)("should use a normal transfer for private ephemeral-to-ephemeral transfers", async () => {
724
+ const instructions = await (0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
725
+ visibility: "private",
726
+ fromBalance: "ephemeral",
727
+ toBalance: "ephemeral",
728
+ initIfMissing: true,
729
+ initVaultIfMissing: true,
730
+ });
731
+ (0, vitest_1.expect)(instructions).toHaveLength(1);
732
+ (0, vitest_1.expect)(instructions[0].data[0]).toBe(3);
733
+ (0, vitest_1.expect)(instructions[0].keys).toHaveLength(3);
734
+ (0, vitest_1.expect)(Buffer.from(instructions[0].data).readBigUInt64LE(1)).toBe(25n);
735
+ });
736
+ (0, vitest_1.it)("should reject unsupported routes", async () => {
737
+ await (0, vitest_1.expect)((0, ephemeral_spl_token_program_1.transferSpl)(from, to, mint, 25n, {
738
+ visibility: "public",
739
+ fromBalance: "base",
740
+ toBalance: "ephemeral",
741
+ })).rejects.toThrow("transferSpl route not implemented: visibility=public, fromBalance=base, toBalance=ephemeral");
742
+ });
743
+ });
744
+ (0, vitest_1.describe)("ensureTransferQueueCrankIx (Ephemeral SPL Token Program)", () => {
745
+ const payer = mockPublicKey;
746
+ const queue = differentKey;
747
+ (0, vitest_1.it)("should include queue, magic context, and magic program in order", () => {
748
+ const instruction = (0, ephemeral_spl_token_program_1.ensureTransferQueueCrankIx)(payer, queue);
749
+ (0, vitest_1.expect)(instruction.keys).toHaveLength(4);
750
+ (0, vitest_1.expect)(instruction.keys[0].pubkey.toBase58()).toBe(payer.toBase58());
751
+ (0, vitest_1.expect)(instruction.keys[1].pubkey.toBase58()).toBe(queue.toBase58());
752
+ (0, vitest_1.expect)(instruction.keys[2].pubkey.toBase58()).toBe(constants_1.MAGIC_CONTEXT_ID.toBase58());
753
+ (0, vitest_1.expect)(instruction.keys[3].pubkey.toBase58()).toBe(constants_1.MAGIC_PROGRAM_ID.toBase58());
754
+ });
755
+ });
756
+ (0, vitest_1.describe)("depositAndQueueTransferIx (Ephemeral SPL Token Program)", () => {
757
+ const queue = differentKey;
758
+ const vault = new web3_js_1.PublicKey("11111111111111111111111111111113");
759
+ const mint = new web3_js_1.PublicKey("11111111111111111111111111111114");
760
+ const source = new web3_js_1.PublicKey("11111111111111111111111111111115");
761
+ const vaultAta = new web3_js_1.PublicKey("11111111111111111111111111111116");
762
+ const destination = new web3_js_1.PublicKey("11111111111111111111111111111117");
763
+ (0, vitest_1.it)("should serialize min/max delay ms and split", () => {
764
+ const instruction = (0, ephemeral_spl_token_program_1.depositAndQueueTransferIx)(queue, vault, mint, source, vaultAta, destination, mockPublicKey, 25n, 100n, 300n, 4);
765
+ (0, vitest_1.expect)(instruction.keys).toHaveLength(8);
766
+ (0, vitest_1.expect)(Array.from(instruction.data)).toEqual([
767
+ 16,
768
+ ...Array.from(Buffer.from([25n, 100n, 300n].flatMap((value) => {
769
+ const out = Buffer.alloc(8);
770
+ out.writeBigUInt64LE(value);
771
+ return Array.from(out);
772
+ }))),
773
+ 4,
774
+ 0,
775
+ 0,
776
+ 0,
777
+ ]);
778
+ });
779
+ });
780
+ (0, vitest_1.describe)("delegateTransferQueueIx (Ephemeral SPL Token Program)", () => {
781
+ const payer = mockPublicKey;
782
+ const queue = differentKey;
783
+ (0, vitest_1.it)("should serialize discriminator 19 for the delegated transfer queue opcode", () => {
784
+ const instruction = (0, ephemeral_spl_token_program_1.delegateTransferQueueIx)(queue, payer, mockPublicKey);
785
+ (0, vitest_1.expect)(instruction.keys).toHaveLength(9);
786
+ (0, vitest_1.expect)(Array.from(instruction.data)).toEqual([19]);
787
+ });
788
+ });
789
+ (0, vitest_1.describe)("delegateEataPermissionIx (Ephemeral SPL Token Program)", () => {
790
+ (0, vitest_1.it)("should serialize only the discriminator", () => {
791
+ const instruction = (0, ephemeral_spl_token_program_1.delegateEataPermissionIx)(mockPublicKey, differentKey, mockPublicKey);
792
+ (0, vitest_1.expect)(Array.from(instruction.data)).toEqual([7]);
793
+ });
794
+ });
795
+ (0, vitest_1.describe)("initEphemeralAtaIx (Ephemeral SPL Token Program)", () => {
796
+ (0, vitest_1.it)("should serialize only the discriminator", () => {
797
+ const instruction = (0, ephemeral_spl_token_program_1.initEphemeralAtaIx)(mockPublicKey, differentKey, mockPublicKey, differentKey);
798
+ (0, vitest_1.expect)(Array.from(instruction.data)).toEqual([0]);
799
+ });
800
+ });
801
+ (0, vitest_1.describe)("initVaultIx (Ephemeral SPL Token Program)", () => {
802
+ (0, vitest_1.it)("should serialize only the discriminator", () => {
803
+ const vault = new web3_js_1.PublicKey("11111111111111111111111111111113");
804
+ const mint = new web3_js_1.PublicKey("11111111111111111111111111111114");
805
+ const payer = new web3_js_1.PublicKey("11111111111111111111111111111115");
806
+ const instruction = (0, ephemeral_spl_token_program_1.initVaultIx)(vault, mint, payer);
807
+ (0, vitest_1.expect)(Array.from(instruction.data)).toEqual([1]);
808
+ (0, vitest_1.expect)(instruction.keys[3].pubkey.toBase58()).toBe((0, ephemeral_spl_token_program_1.deriveEphemeralAta)(vault, mint)[0].toBase58());
809
+ });
810
+ });
811
+ (0, vitest_1.describe)("withdrawSplIx (Ephemeral SPL Token Program)", () => {
812
+ (0, vitest_1.it)("should encode only discriminator plus amount", () => {
813
+ const owner = new web3_js_1.PublicKey("11111111111111111111111111111113");
814
+ const mint = new web3_js_1.PublicKey("11111111111111111111111111111114");
815
+ const instruction = (0, ephemeral_spl_token_program_1.withdrawSplIx)(owner, mint, 1n);
816
+ (0, vitest_1.expect)(instruction.data).toHaveLength(9);
817
+ (0, vitest_1.expect)(instruction.data[0]).toBe(3);
818
+ (0, vitest_1.expect)(Buffer.from(instruction.data).readBigUInt64LE(1)).toBe(1n);
819
+ });
820
+ });
433
821
  });
434
822
  //# sourceMappingURL=instructions.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.test.js","sourceRoot":"","sources":["../../src/__test__/instructions.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instructions.test.js","sourceRoot":"","sources":["../../src/__test__/instructions.test.ts"],"names":[],"mappings":"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"}