@ -1,152 +1,151 @@
import { movieDetailsPage as Page } from "@/integration/page-objects" ;
import { movieDetailsPage as Page } from '@/integration/page-objects' ;
describe ( "Movie Details Buttons" , ( ) = > {
it ( "Movie Requested by Admin should be auto approved" , ( ) = > {
describe ( 'Movie Details Buttons' , ( ) = > {
it ( 'Movie Requested by Admin should be auto approved' , ( ) = > {
cy . login ( ) ;
Page . visit ( "587807" ) ;
Page . visit ( '587807' ) ;
Page . requestButton . click ( ) ;
Page . adminOptionsDialog . isOpen ( ) ;
Page . adminOptionsDialog . requestButton . click ( ) ;
cy . verifyNotification ( "Request for Tom & Jerry has been added successfully" ) ;
cy . verifyNotification ( 'Request for Tom & Jerry has been added successfully' ) ;
Page . requestedButton . should ( "be.visible" ) ;
Page . requestedButton . should ( 'be.visible' ) ;
} ) ;
it ( "Movie Requested by Regular user should be pending" , ( ) = > {
it ( 'Movie Requested by Regular user should be pending' , ( ) = > {
cy . generateUniqueId ( ) . then ( ( id ) = > {
cy . login ( ) ;
const roles = [ ] ;
roles . push ( { value : "RequestMovie" , enabled : true } ) ;
cy . createUser ( id , "a" , roles ) . then ( ( ) = > {
cy . loginWithCreds ( id , "a" ) ;
roles . push ( { value : 'RequestMovie' , enabled : true } ) ;
cy . createUser ( id , 'a' , roles ) . then ( ( ) = > {
cy . loginWithCreds ( id , 'a' ) ;
Page . visit ( "651571" ) ;
Page . visit ( '651571' ) ;
Page . requestButton . click ( ) ;
cy . verifyNotification ( "Request for Breach has been added successfully" ) ;
cy . verifyNotification ( 'Request for Breach has been added successfully' ) ;
Page . requestedButton . should ( "be.visible" ) ;
Page . requestedButton . should ( 'be.visible' ) ;
} ) ;
} ) ;
} ) ;
it ( "Movie Requested by Regular with no movie permission" , ( ) = > {
it ( 'Movie Requested by Regular with no movie permission' , ( ) = > {
cy . generateUniqueId ( ) . then ( ( id ) = > {
cy . login ( ) ;
const roles = [ ] ;
roles . push ( { value : "RequestTv" , enabled : true } ) ;
cy . createUser ( id , "a" , roles ) . then ( ( ) = > {
cy . loginWithCreds ( id , "a" ) ;
roles . push ( { value : 'RequestTv' , enabled : true } ) ;
cy . createUser ( id , 'a' , roles ) . then ( ( ) = > {
cy . loginWithCreds ( id , 'a' ) ;
Page . visit ( "791373" ) ;
Page . visit ( '791373' ) ;
Page . requestButton . click ( ) ;
cy . verifyNotification ( "You do not have permissions to Request a Movie" ) ;
cy . verifyNotification ( 'You do not have permissions to Request a Movie' ) ;
Page . requestedButton . should ( "not.exist" ) ;
Page . requestedButton . should ( 'not.exist' ) ;
} ) ;
} ) ;
} ) ;
it ( "Movie Requested by Regular can be approved by admin" , ( ) = > {
it ( 'Movie Requested by Regular can be approved by admin' , ( ) = > {
cy . generateUniqueId ( ) . then ( ( id ) = > {
cy . login ( ) ;
const roles = [ ] ;
roles . push ( { value : "RequestMovie" , enabled : true } ) ;
cy . createUser ( id , "a" , roles ) . then ( ( ) = > {
cy . loginWithCreds ( id , "a" ) ;
roles . push ( { value : 'RequestMovie' , enabled : true } ) ;
cy . createUser ( id , 'a' , roles ) . then ( ( ) = > {
cy . loginWithCreds ( id , 'a' ) ;
Page . visit ( "793723" ) ;
Page . visit ( '793723' ) ;
Page . requestButton . click ( ) ;
cy . verifyNotification ( "Request for Sentinelle has been added successfully" ) ;
cy . verifyNotification ( 'Request for Sentinelle has been added successfully' ) ;
Page . requestedButton . should ( "be.visible" ) ;
Page . requestedButton . should ( 'be.visible' ) ;
// Login as admin now
cy . removeLogin ( ) ;
cy . login ( ) ;
cy . reload ( ) ;
Page . visit ( "793723" ) ;
cy . intercept ( 'GET' , '**/Request/movie/info/**' ) . as ( 'requestCall' ) ;
Page . visit ( '793723' ) ;
Page . approveButton . should ( "exist" ) ;
cy . wait ( '@requestCall' ) . then ( ( __ ) = > {
Page . approveButton . should ( 'exist' ) ;
Page . approveButton . click ( ) ;
cy . verifyNotification ( "Successfully Approved" ) ;
cy . verifyNotification ( 'Successfully Approved' ) ;
} ) ;
} ) ;
} ) ;
} ) ;
it ( "Movie Requested, mark as available" , ( ) = > {
it ( 'Movie Requested, mark as available' , ( ) = > {
cy . login ( ) ;
Page . visit ( "12444" ) ;
Page . visit ( '12444' ) ;
Page . requestButton . click ( ) ;
Page . adminOptionsDialog . isOpen ( ) ;
Page . adminOptionsDialog . requestButton . click ( ) ;
cy . verifyNotification (
"Request for Harry Potter and the Deathly Hallows: Part 1 has been added successfully"
) ;
cy . verifyNotification ( 'Request for Harry Potter and the Deathly Hallows: Part 1 has been added successfully' ) ;
cy . intercept ( 'GET' , '**/Images/banner/movie/**' ) . as ( 'bannerLoad' ) ;
cy . reload ( ) ;
Page . markAvailableButton . should ( "exist" ) ;
cy . wait ( '@bannerLoad' ) . then ( ( __ ) = > {
Page . markAvailableButton . should ( 'exist' ) ;
Page . markAvailableButton . click ( ) ;
cy . waitUntil ( ( ) = > {
return Page . availableButton . should ( "be.visible" ) ;
} )
cy . verifyNotification ( "Request is now available" ) ;
Page . availableButton . should ( "exist" ) ;
cy . verifyNotification ( 'Request is now available' ) ;
Page . availableButton . should ( 'exist' ) ;
} ) ;
} ) ;
it . skip ( "Movie Requested, Deny Movie" , ( ) = > {
it . skip ( 'Movie Requested, Deny Movie' , ( ) = > {
cy . login ( ) ;
Page . visit ( "671" ) ;
Page . visit ( '671' ) ;
Page . requestButton . click ( ) ;
Page . adminOptionsDialog . isOpen ( ) ;
Page . adminOptionsDialog . requestButton . click ( ) ;
cy . verifyNotification (
"Request for Harry Potter and the Philosopher's Stone has been added successfully"
) ;
cy . verifyNotification ( "Request for Harry Potter and the Philosopher's Stone has been added successfully" ) ;
cy . reload ( ) ;
Page . denyButton . should ( "exist" ) ;
Page . denyButton . should ( 'exist' ) ;
Page . denyButton . click ( ) ;
Page . denyModal . denyReason . type ( "Automation Tests" ) ;
Page . denyModal . denyReason . type ( 'Automation Tests' ) ;
cy . wait ( 500 ) ;
Page . denyModal . denyButton . click ( ) ;
Page . deniedButton . should ( 'exist' ) ;
cy . verifyNotification ( "Denied Request" ) ;
cy . verifyNotification ( 'Denied Request' ) ;
cy . wait ( 1000 ) ;
Page . informationPanel . denyReason . should ( 'have.text' , "Automation Tests" ) ;
Page . informationPanel . denyReason . should ( 'have.text' , 'Automation Tests' ) ;
} ) ;
it ( "Movie View Collection should be available" , ( ) = > {
it ( 'Movie View Collection should be available' , ( ) = > {
cy . login ( ) ;
Page . visit ( "671" ) ;
Page . visit ( '671' ) ;
Page . viewCollectionButton . should ( 'be.visible' ) ;
} ) ;
it ( "Non requested movie valid buttons" , ( ) = > {
it ( 'Non requested movie valid buttons' , ( ) = > {
cy . login ( ) ;
Page . visit ( "590706" ) ;
Page . visit ( '590706' ) ;
Page . viewCollectionButton . should ( 'not.exist' ) ;
Page . approveButton . should ( 'not.exist' ) ;