@@ -7,7 +7,7 @@ import { MarketplaceCollectionEntity, MarketplaceEntity } from 'src/db/marketpla
7
7
import { MarketplaceTypeEnum } from '../models/MarketplaceType.enum' ;
8
8
import { MarketplaceFilters } from '../models/Marketplace.Filter' ;
9
9
import { Marketplace } from '../models' ;
10
- import { WhitelistCollectionRequest } from '../models/requests/WhitelistCollectionOnMarketplaceRequest' ;
10
+ import { RemoveWhitelistCollectionRequest , WhitelistCollectionRequest } from '../models/requests/WhitelistCollectionOnMarketplaceRequest' ;
11
11
import { BadRequestError } from 'src/common/models/errors/bad-request-error' ;
12
12
import { Logger } from '@nestjs/common' ;
13
13
import { WhitelistMarketplaceRequest } from '../models/requests/WhitelistMarketplaceRequest' ;
@@ -738,6 +738,64 @@ describe('Marketplaces Service', () => {
738
738
} ) ;
739
739
} ) ;
740
740
741
+ describe ( 'removeWhitelistCollection' , ( ) => {
742
+ it ( 'when marketplace not found throws error' , async ( ) => {
743
+ const persistenceService = module . get < PersistenceService > ( PersistenceService ) ;
744
+
745
+ persistenceService . getMarketplaceByKey = jest . fn ( ) . mockReturnValueOnce ( null ) ;
746
+ persistenceService . getCollectionByKeyAndCollection = jest . fn ( ) . mockReturnValueOnce ( new MarketplaceCollectionEntity ( ) ) ;
747
+
748
+ await expect ( service . removeWhitelistCollection ( new RemoveWhitelistCollectionRequest ( ) ) ) . rejects . toThrowError ( BadRequestError ) ;
749
+ } ) ;
750
+
751
+ it ( 'when collection not found throws error' , async ( ) => {
752
+ const persistenceService = module . get < PersistenceService > ( PersistenceService ) ;
753
+
754
+ persistenceService . getMarketplaceByKey = jest . fn ( ) . mockReturnValueOnce ( inputMarketplace [ 0 ] ) ;
755
+ persistenceService . getCollectionByKeyAndCollection = jest . fn ( ) . mockReturnValueOnce ( null ) ;
756
+
757
+ await expect ( service . removeWhitelistCollection ( new RemoveWhitelistCollectionRequest ( ) ) ) . rejects . toThrowError ( BadRequestError ) ;
758
+ } ) ;
759
+
760
+ it ( 'when marketplace exists and delete fails returns false' , async ( ) => {
761
+ const persistenceService = module . get < PersistenceService > ( PersistenceService ) ;
762
+
763
+ persistenceService . getMarketplaceByKey = jest . fn ( ) . mockReturnValueOnce ( inputMarketplace [ 0 ] ) ;
764
+ persistenceService . getCollectionByKeyAndCollection = jest . fn ( ) . mockReturnValueOnce ( new MarketplaceCollectionEntity ( ) ) ;
765
+
766
+ persistenceService . deleteMarketplaceCollection = jest . fn ( ( ) => {
767
+ throw new Error ( ) ;
768
+ } ) ;
769
+
770
+ const expectedResult = await service . removeWhitelistCollection (
771
+ new RemoveWhitelistCollectionRequest ( { marketplaceKey : 'xoxno' , collection : 'identifier' } ) ,
772
+ ) ;
773
+
774
+ expect ( expectedResult ) . toBeFalsy ( ) ;
775
+ } ) ;
776
+
777
+ it ( 'when marketplace exists and save is succesfull returns true' , async ( ) => {
778
+ const persistenceService = module . get < PersistenceService > ( PersistenceService ) ;
779
+ const eventPublisher = module . get < CacheEventsPublisherService > ( CacheEventsPublisherService ) ;
780
+
781
+ eventPublisher . publish = jest . fn ( ) ;
782
+ persistenceService . getMarketplaceByKey = jest . fn ( ) . mockReturnValueOnce ( inputMarketplace [ 0 ] ) ;
783
+ persistenceService . getCollectionByKeyAndCollection = jest . fn ( ) . mockReturnValueOnce ( new MarketplaceCollectionEntity ( ) ) ;
784
+
785
+ persistenceService . deleteMarketplaceCollection = jest . fn ( ) . mockReturnValueOnce (
786
+ new MarketplaceCollectionEntity ( {
787
+ collectionIdentifier : 'collection' ,
788
+ marketplaces : [ inputMarketplace [ 0 ] ] ,
789
+ } ) ,
790
+ ) ;
791
+ const expectedResult = await service . removeWhitelistCollection (
792
+ new RemoveWhitelistCollectionRequest ( { marketplaceKey : 'xoxno' , collection : 'identifier' } ) ,
793
+ ) ;
794
+
795
+ expect ( expectedResult ) . toBeTruthy ( ) ;
796
+ } ) ;
797
+ } ) ;
798
+
741
799
describe ( 'whitelistMarketplace' , ( ) => {
742
800
it ( 'when marketplace key exists throws error' , async ( ) => {
743
801
const persistenceService = module . get < PersistenceService > ( PersistenceService ) ;
0 commit comments