@@ -571,6 +571,8 @@ ruleTester.run('valid-expect', rule, {
571
571
// usages in async function
572
572
{
573
573
code : 'test("valid-expect", async () => { expect(Promise.resolve(2)).resolves.toBeDefined(); });' ,
574
+ output :
575
+ 'test("valid-expect", async () => { await expect(Promise.resolve(2)).resolves.toBeDefined(); });' ,
574
576
errors : [
575
577
{
576
578
column : 36 ,
@@ -582,6 +584,8 @@ ruleTester.run('valid-expect', rule, {
582
584
} ,
583
585
{
584
586
code : 'test("valid-expect", async () => { expect(Promise.resolve(2)).resolves.not.toBeDefined(); });' ,
587
+ output :
588
+ 'test("valid-expect", async () => { await expect(Promise.resolve(2)).resolves.not.toBeDefined(); });' ,
585
589
errors : [
586
590
{
587
591
column : 36 ,
@@ -621,6 +625,12 @@ ruleTester.run('valid-expect', rule, {
621
625
expect(Promise.resolve(1)).rejects.toBeDefined();
622
626
});
623
627
` ,
628
+ output : dedent `
629
+ test("valid-expect", async () => {
630
+ await expect(Promise.resolve(2)).resolves.not.toBeDefined();
631
+ await expect(Promise.resolve(1)).rejects.toBeDefined();
632
+ });
633
+ ` ,
624
634
errors : [
625
635
{
626
636
line : 2 ,
@@ -646,6 +656,12 @@ ruleTester.run('valid-expect', rule, {
646
656
expect(Promise.resolve(1)).rejects.toBeDefined();
647
657
});
648
658
` ,
659
+ output : dedent `
660
+ test("valid-expect", async () => {
661
+ await expect(Promise.resolve(2)).resolves.not.toBeDefined();
662
+ await expect(Promise.resolve(1)).rejects.toBeDefined();
663
+ });
664
+ ` ,
649
665
errors : [
650
666
{
651
667
line : 3 ,
@@ -667,6 +683,12 @@ ruleTester.run('valid-expect', rule, {
667
683
return expect(Promise.resolve(1)).rejects.toBeDefined();
668
684
});
669
685
` ,
686
+ output : dedent `
687
+ test("valid-expect", async () => {
688
+ await expect(Promise.resolve(2)).resolves.not.toBeDefined();
689
+ await expect(Promise.resolve(1)).rejects.toBeDefined();
690
+ });
691
+ ` ,
670
692
options : [ { alwaysAwait : true } ] ,
671
693
errors : [
672
694
{
@@ -691,6 +713,12 @@ ruleTester.run('valid-expect', rule, {
691
713
return expect(Promise.resolve(1)).rejects.toBeDefined();
692
714
});
693
715
` ,
716
+ output : dedent `
717
+ test("valid-expect", async () => {
718
+ await expect(Promise.resolve(2)).resolves.not.toBeDefined();
719
+ return expect(Promise.resolve(1)).rejects.toBeDefined();
720
+ });
721
+ ` ,
694
722
errors : [
695
723
{
696
724
line : 2 ,
@@ -709,6 +737,12 @@ ruleTester.run('valid-expect', rule, {
709
737
return expect(Promise.resolve(1)).rejects.toBeDefined();
710
738
});
711
739
` ,
740
+ output : dedent `
741
+ test("valid-expect", async () => {
742
+ await expect(Promise.resolve(2)).resolves.not.toBeDefined();
743
+ await expect(Promise.resolve(1)).rejects.toBeDefined();
744
+ });
745
+ ` ,
712
746
options : [ { alwaysAwait : true } ] ,
713
747
errors : [
714
748
{
@@ -726,6 +760,12 @@ ruleTester.run('valid-expect', rule, {
726
760
return expect(Promise.resolve(1)).toReject();
727
761
});
728
762
` ,
763
+ output : dedent `
764
+ test("valid-expect", async () => {
765
+ await expect(Promise.resolve(2)).toResolve();
766
+ await expect(Promise.resolve(1)).toReject();
767
+ });
768
+ ` ,
729
769
options : [ { alwaysAwait : true } ] ,
730
770
errors : [
731
771
{
@@ -771,6 +811,27 @@ ruleTester.run('valid-expect', rule, {
771
811
} ,
772
812
] ,
773
813
} ,
814
+ {
815
+ code : dedent `
816
+ test("valid-expect", async () => {
817
+ Promise.reject(expect(Promise.resolve(2)).resolves.not.toBeDefined());
818
+ });
819
+ ` ,
820
+ output : dedent `
821
+ test("valid-expect", async () => {
822
+ await Promise.reject(expect(Promise.resolve(2)).resolves.not.toBeDefined());
823
+ });
824
+ ` ,
825
+ errors : [
826
+ {
827
+ line : 2 ,
828
+ column : 3 ,
829
+ endColumn : 72 ,
830
+ messageId : 'promisesWithAsyncAssertionsMustBeAwaited' ,
831
+ data : { orReturned : ' or returned' } ,
832
+ } ,
833
+ ] ,
834
+ } ,
774
835
{
775
836
code : dedent `
776
837
test("valid-expect", () => {
@@ -961,6 +1022,14 @@ ruleTester.run('valid-expect', rule, {
961
1022
});
962
1023
});
963
1024
` ,
1025
+ output : dedent `
1026
+ test("valid-expect", () => {
1027
+ return expect(functionReturningAPromise()).resolves.toEqual(1).then(async () => {
1028
+ await expect(Promise.resolve(2)).resolves.toBe(1);
1029
+ await expect(Promise.resolve(4)).resolves.toBe(4);
1030
+ });
1031
+ });
1032
+ ` ,
964
1033
errors : [
965
1034
{
966
1035
line : 4 ,
0 commit comments