Selenium Webdriver Handling IFrames

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
multiple frames iframes now today we will see switch between alerts or pop-ups or pop-ups and the next class we will see how to switch between the windows or web browsers okay so this is very important concept so for switch between the frames what are the commands I have used what are the commands I have used driver however dot switch to dot switch to dot frame right this is a command I have used driver dots to talk straight this is a command so in the frame we can pass a parameter two types of parameters on paths one is your frame name is available directly we can pass a name that is the one thing other one is suppose if the team is not present then we can directly pass the xpath of the element know what direct legs pass that mean again we need to use driver dot find element element we need to pass or driver dot find element so this is another syntax tie or dot find element by a dot XPath and here we need to specify a tire x-pac ok some Xbox ok so this is another syntax of frames if frame name is not available we need to follow this one ok so what we need to do here is switch to dot frame we need to pass entire web element this is the one syntax and this in tax we have to use in assignments whatever I have gave you okay but in my class I have told you one more exercise right or one more example there we have used me so how to use driver dot switch to dot frame-off here we need to specify frame name or name of the frame this is the two syntaxes so two syntaxes you need to remember this subtype yes yes so if name is available directively no problem directly specify the name if name is not available then you need to find that you need to pause the entire frame element so for that you need to get the xpath of the frame so these two we have seen in the last class now today we will see how to switch between the others this was very important one and also when you do project in the real time you will face these colors and pop-ups okay so first let us understand what is alert and what is pop-up then we will see how to how to handle those pop-ups or how to close the popups okay so let me show you a simple example here there is the option called alerts switch to alerts I have three different type of others here I will show you first alert with okay button alert with ok and cancel button allows to with text box there are two alert box alert with OK button alert with ok and cancel alert with the text box so let me show you first I left with ok button when you click on this button when you click on this button that some pop-up is came rate which is a pop-up actually so this pop-up contains some text here am an alert box some text is present here right and then ok button is click there so if you want to get some text proposed if you want to get this name or get I want to get this text and then I want to click on the ok button so how it is possible so here the alert box is different the window is different so if you want to perform any kind of operation on the alert box we need to switch to this particular alert box we need to switch ok so this is one kind of electric box now I'll show you the second one ok and cancel button when you click on this button see now there are two options are there press a button either ok we need to click or cancel we need to click we need to decide here right so again we have some text percentages this is the second type of a locked box with ok and cancel button and then third one if you click on this button you will see it alert box or popup box here you have seen one text box also here we can enter any text yep and then you can click on OK or cancel button this is another text box ok today I explained two things first one and second one and third thing you will try as an exercise ok so now so first let us start with how to handle this ones so what you need to the first thing if I click on first I need to navigate to this particular website so let us start with this so the command is driver drop switch to frame we have seen like this is the command and we similarly we have command called driver dot switch to dot alert this is a command divert dot CH 2 dot alert so this is a command we need to use to work with the alert boxes or pop-up windows ok now we will see how to use a command let me write a start program now I will create switch between the frames we have seen now new class switch between alerts take main method finish it right so now I have a main method now I need to start my probe so before that what I can do is let me star system door property and Firefox okay now I have said the system property and driver object I have created now let us start here so what is the first thing we need to import invoke the URL so not yet so here we need to pass the entire you our other so dot HTML this is my URL put the quotation now it will open up the page so what is the next thing we need to do there are three options of that by default if you open this page you will be there in the first alert box action this box will be spared suppose if not displayed what you need to do now you need to click on this link alert with okay link and then you will display this see if I click on the second one second button is this thing click on third one third one is display so click on first one and then in this button it should click on so now how many clicks we need to do other tweet okay that is the one click the button to display an alert box this is a second thing so these two links we need to click so now let us identify those properties of those two link boxes yes let me open so first I need to click on alert wait ok button so take the Firebug not here let me open the Firefox okay so this is my alert box just a moment it's loading the page yes now I need to identify alert dot okay button now identify this link take the okay this is a normal expert remote this let me check this okay this is my ex pop alert with okay button this is a link also okay you can take the XPath or we can take a link a texture also we can take a lot to it okay because this link is present on some other element also right so that we can take the XPath directly take this now driver dot find element by dot XPath here space by the XPath and then which method we need to use click it click meter so why we have written this statement this is alert with okay button okay and then we have we need to click on the second one which is the link under one click on this take this one expert driver dot driver dot X part sorry driver dot find element by dot X path specify the X path again and dot here also we should use click so this is the same elect with okay link the first one is the link and the second option is a button the sea the button okay button okay now we have clicked on this one and also this one now we got the app and a locked box the alert box this alert box of shape and some type is will be changed one browser to another browser okay if you click on this link on Chrome or Internet Explorer it will be shown like it will be displayed a little bit lengthy and broader okay display settings will be different so but finally it is an alert box so if you write a script desk it will be work on any kind of browser no problem for that okay now so this is my alert box so what I should do now I need to click on OK button then it will be closed if I click on this then only it will close so now before that what I need to do is I as soon as I click on this as soon as I click on that button alert box will open now if you want to click on OK but then I need to switch to that particular alert box and then I can click on the ok button but if you observe here if you want to identify the properties of the okay button we cannot identify because this is the different kind of alert by using Firebug we cannot get the properties of okay button okay so this is a different kind of element this is a basically window based application okay so what we do not do then how we need to click on the ok button how we need to close until unless we click on the ok button we cannot close this so here two things we need to do one is we need to switch to that particular collector box after switching it then we need to click on OK button two things we need to do so how we can perform let us see but if you know the properties of okay button then I can click directly right I can use click method but directly if I want to close out okay but but here we cannot get any properties of okay button that is the challenge okay now let us see fuss how to switch to window or the switch to alert and then we will see how to close this ok button right so now next statement how to switch switch to alert box so now what is the command sees to alert box yes try or talk about my other here we need to provide anything whichever is a lot is presently appear it automatically switch to the talent we no need to pass any properties okay drive or not alert but the frame we have to pass some parameters they were dots which is rotor frame we need to pass as a frame name or element but here we no need to pass anything whichever is pop-up is km/hr is alert it's game immediately switch to that particular alert okay now this command will switch to that particular alert box now what we need to do now we need to close this alert if you want to close this there is no close buttons nothing is present there is only way that is we need to click on the ok button but if you want to click on OK button just observe one minute just a moment if you want to okay I click if I want to click OK button I need to get some properties right so we don't have any property so then what we can do have a one method what is that driver dot C no another matter here as soon as you switch to that particular level there is another method dot except dot accent what this method will do it will close the window without clicking on the ok button this is a default method got my point driver dots which route alert map point to that particular outlet and after pointed to that alert what we need to do we need to accept accept amis click will open it will stick to ok fight on automatically and there is another method called dismiss if there is a cancel button then we can use a dismiss method but we cannot directly click on OK or cancel button remember this point ok in alert boxes we cannot click on cancel or ok buttons why we cannot do it for the reason why why can we cannot directly kuroky R cancel buttons because in alert box we don't get any properties of ok and cancel buttons we cannot identify those properties by using firebug what my point that's the reason we cannot use our click method or find element now no matter will be useful there so there is only matter we should accept it or we can dismiss it except the method will automatically close the pop-up by clicking on the ok button and this miss method will close the pop-up window by clicking on the cancel button remember this point ok what this method will do now it will accept the me ok button click and then close the alert both will do alert okay now see now it will close ok button then it will come out now let us agree to this fast okay I click run as java application observe right it is opened and closed immediately okay now it is done now I will expand the script little bit more for example when I click on this alert when I click on this alert let me come again beginning when I click on this alert it is opening the alert box right this is my alert box so before accepting it what I want to do is I want to capture this text I want to capture this text and I want to print in the console okay got my point this is a simple verification point whether this alert box is displaying the correct message or not that is my verification point I want to check this one before if I want to check this alert what you need to do we need to capture this text right from the alert box I accept before before accepting this what I need to do I need to capture the text from the alert box right and then I can accept the alert box so for getting the text what we need to do me so before getting the accept what we need to do is we need to write one more method here driver dot switch to dot alert dot get text that's it so whichever text present in the alert box that will be written so that you can store in a string if you want to verify that you can store in a string or you can directly print that value system dot out dot println that's it okay now immediately what will happen and then again driver dots which should not alert or dot except so before accepting that what it will do it will get the text present on the alert box and then it will display in the console now execute once again yes tis done now see the output this is my output okay this is how we can capture the text from the alert box if either one example this is this is the alert box with OK button let me write an example this is alert box with ok button example okay this is all the script comes under one is it clear any questions on the script how to switch product okay fine now we have opened the alert box we have captured the text and also we have accepted the ok pattern so this we have done now what I want to do is I will create one more program just a moment I make this as alert to it a little bit okay button yes I'm changing that last name okay because I like to eat okay but this is an example for alert with okay better now let me create one more class a lot to it okay cancel button now we have two teams two options okay now observe this one open the page fine this is the page now when I come to the second option when I click on the second link here alert Widow can cancel this will open up the link or button here so when I click on this observe the functionality when I click on this it will show up the two things press a button one button either okay button or cancel button when I click on OK button what is happening it is displaying the message like you have pressed okay for example if I click on the cancel button what are you saying you pressed cancel button okay this is a functionality now what my verification is when I click on this button when I click on the ok button I will verify this message correctly coming or not if I click on OK button this should display like your press ok if I click on from the cancel button after comeback it should display your pressed cancel button that is my validation is it clear the scenario okay this is my now let me try to this so if you want to do this automate what we need to do first after opening this link I need to click on this one okay cancel link and then I need to click on this particular pattern so let me copy the same state before that because these three are same okay now system are set property driver object and we opened up uro same URL but here the link will be changed so copy this one this is XPath of the okay cancel button driver dot find element by dot XPath this is my drive this is my element dot click OK this is alert with ok cancel button you think and then after this what we need to do we need to also click on the button right so capture this button X path of this pattern take the button in driver dot find element by dot X path specify that expert and then what is the command we need to click dot click done so this is the button this is the link and this is the ok cancel button now so it will open as soon as I click on this it will open up the pop-up right we need to switch to this puppet and then any to is a click on OK button or cancel button here although sames is situation so we cannot directly click on OK button or cancel button if you want to click on OK but then we need to use accept method if you want to click on the cancel button we need to use it this miss method there is the only way okay so now as soon as you click on this button it will open up the alert box now what you need to do you need to for example driver dot switch to dot driver dot switch to dot a let this element will point out the Elat dot except what this button will do it will click on accept as soon as you click fourth option you need to verify this text right so capture this text this is the expert of the text copy this this is dynamic again if you click on the ok button it will be ok it will click on the cancel button it will become cancel my rate this is a dynamic so what you need to do is copy this this is expected spectra text right equal to put that value in somewhere entire thing copy this is my expected value right if I do this what you will get this is expected value I want to this is the string put the string here this is expected text what is actual text if I click on this except by to accept then it I will get this so how we will get this you need to write XPath of this now it is actual this is actual right so now what you need to we'll take one more string actual text actual text equal to private dot driver dot find element by dot X PI X PI that entire expert dot get text get X what get X will do now get text will capture the whatever is present here okay now we have expected one an actual one both I have now I need to compare these two correct or not now I need to write the condition if expected test h mu double dot equals dot equals actual text it in the quotation actual test true yes it will return either true or false ID - then what we can see system dot out dot println is past this is how we need to end this is the one validation you press ok button ok if you if you click on accept button this will become true so apart from this access button if you click on some other button it will become fast so that also we can write if see this is expected test for OK button ok this is expected text for OK button so let me write that answer because we have cancel also right now if this is actual text for okay better actual text for OK button now suppose if I click on cancel button then what is our expectation what is our expectation string that is also willing to write string expected text fir Council button ok so what is our expectation if I click on the cancel button this is my expectation right copy this also right now if I click on the ok button this is our expectation and if I click on the cancel button then this is our expectation both I have now we need to check both actually so let us click on alert accept then check whether the actual text is okay equals to actual text okay so this is an expected test okay this is actual test okay both are true test is possible there is another scenario suppose if I click on the dismiss now this validation is done now the second thing instead of accept I will do dismiss dot dismiss this will be con the cancel button so then what we are expecting now if if extractor texts cancel right dot equals 30 missing dot equals dot equals just a moment okay dot equals so how do we get the actual now we need to we need to get by XPath here so again expert will be same even though it is canceled or ok button XPath will be same so instead of this what we can do is something we can do expert even though this is dynamic it will get the text not a problem so what we can do is after clicking on accept yet getting the actual text you okay cancel both our actual text will be a different but capturing is the same so take the actual text so take actually pops here and the same thing see no change if I click on this okay button only text we have need to validate but XPath of this and also if I click on the cancel this export of this both are same expert is different but the value is different expert is same but value is different okay so what you need to do is for getting that value we can identify that element one time that is enough actual text okay so it will dynamically get the text and it will store but if I click on the ok button it will get the you click on OK or if I click on the cancel button it will get the you click it on the can suppress it ok but here we clicked on the accept button so the value of actual text will be this one ok right so now yeah this one suppose if I click on the dismiss button what is our actual text expected text castle dot equals same again equal to two then print the value that's it sorry we should not use quotations because this is a variable not a stream right that exhausting value whatever we get here that will be stored here so we should not use quotations okay this is how we need to use so let me repeat once again what I want to do is if I click on OK button the message should be you press ok and if I click on the cancel button then expected message should be you press cancel so just I have two to eight different variables for expected message this is my expectation but actually what it is there I need to get it right so if you want to click on accept it will automatically con the ok button then after taking on the ok button we need to get the text what it is display right so by using XPath I got the text and then store in actual text and then I compare this one and this one first and now test is passed this is a comparison of OK button and now the second thing now again switch to the same alert box see before that we need to do one validation one minute if I accept here what happens it closes the select box right then you to verify though it is true or false but again if I want to open the alert box I need to click on the button same time right again I need to click on the button because until and unless it alert the box is opened I cannot do the dismissed but here what you are doing you're opening the litter box immediately you are accepting it alert box is not present and then your validation is going on but now what I want to do is if I want to do this validation again I need to open the alert box right so before switching to it I should open alert box how to open alert box again you need to click on this again you need to click on this this is the link before this it will flick on the button then again one more alert box will be there and there you will get the dismiss you will click on the dismiss option is it clear both of you so now run as Java fish now let us see two times to open dialog box see now first time and second time both us done now you observe only test is passed second validation it is not done why it is not done find element so something wrong I did or big thing conditions - and then it will open up cancel yes CA mg/l let us try again done two times but somehow is giving only one Sh test is fast let us see the first scenario let me comment this part this is the furrow Leafs of scenario here we click on the alert box we capture the actual text after clicking on the alert box it is accepted actual test and we compare the both the things now execute okay okay the scenery is fine now let's go to second scenario alone so this is not required now I am executing the second scenario for capsule batter you exFAT can be same but the value because we are getting the dynamic text here cat text so try without find element I am clicking on this okay after clicking on this I'm dismissing this after dismissing actually need to get the text again sorry okay that is the reason it is giving only thing so I need to get the text after getting the text again expect a test should be there at this idea - can sense it not equal actual test is equal to true now it will be passed again right click of a mess yes quite so there is a mistake Adam actually after dismissing this again I need to capture the text right so before that I haven't captured the text so still there are previous text still present ok speaker so in that case condition becomes false right so that it is not printed the second norm so now if you enable auto proper Steimle enabling everything now this is the first one expected if this one actual let me take this here that is better okay spectre-2 okay is this one switching get the text and capture this one and this one both if true test is passed so test one is done and again second thing click on the link again and this is our expected and switch to that alert and dismiss it and after dismissing it again capture the text it is again duplication just remove the string that's it because is already initiated above right so that value will be overridden here so again you know knit in shell because I have specified a string right again we need to specify a string let's take the variable so whatever we expected here that is overridden by the now we will get the another text right actual text so that will be overridden now we need to compare these two tests in the past now renounce the application okay done now both are past so this is a kind of validation we can do with alert boxes alert with okay and cancel button we will see one more example we have another one alert with the text box okay when I click on this this is also Nene to observe when I click on this it will open the lock box okay so in this alert box I can enter anything here so for example if I enter my name here after clicking on OK button it is displaying the message like this with my name with my name it should display whichever name you provided with that name the message will be displayed and that is one if you open this button cancel this it will not display anything empty okay so here what we need to do is we need to find one functionality click on this enter some name any name you enter this enter this and then click on ok button so you need to verify this is correct or not ok can you do this can you do this or just try it if it is very simple one actually so a litter box is sometimes or it will appear as a windows or sometimes it will appear as a different angle different appear or different styles let me open once again third one click here see now our alert box we appear as a different style right that they can browser dependence but not a problem just as soon as it opens this is a text box ok this is a text box there you need to enter some value here this is the default value but here you need to enter some value for example if I test I enter after that accept then you need to verify this message is correct or not so whichever value entered in the text box that value should be present in this here so in this particular text so that is the validation okay play here right so what we I say first this is a litter box how does each ballot box how to switch Taylor right Tiwa dot that dot you should not use except except instead of Excel first there in to use method called send keys okay you can directly write okay so driver dot there is let me show you this there is a method called driver dot switch to dot alert sorry H to dot I let dot ah under 2.1 second there is no sendkeys just a moment sorry I did draw a lot dot yes okay send kit this is how we need to use so here we need to pass a value automatically that will be entered into the text box I'll write in the notepad okay this is the one method so we have learned two different matters so divert not switched water alert driver dots each two dot alert o dot accept accept so this method will close the alert box okay so what is another method driver dot c CH 2 dot dismiss dismiss sorry driver dots each 2 dot alerted or dismiss so what this method will do now it would close the alert box by using OK button and if you will also close the alert box by using cancel okay so now this is another syntax send case you need to pass anything whatever you want okay so what we will do is it will enter the text in the text box which is present on the alert box okay so this is another MIT after entering the text there then you can use this you can use accept okay if you click on this text architect text at Ft okay see one more to show one more time I am showing so you click on here if you enter something here after entering it if you click on OK button then only this message appear or else if I click on be something here if you click on the cancel it will not appear anything okay nothing will be displayed so unit evaluates the functionality of okay button so click here enter some text here and okay button and then check whether your name whatever name you have given in the text box is present here or not but in in to validate okay so deep a radio button in the alert box you are talking about in alert box yes where it is even we can also know that protection we can also - that there are some methods let me show you some examples somewhere a netbook okay in just a moment it takes non-test one of one minute okay so let me find some page and I will show you that example tomorrow okay I don't if you have any pager let me know or else this I'm checking for the pages some pages the alert boxes should have some radio buttons just okay I think I think here right let me check it okay got it one second fine fine so here we can see the first tithing enter text okay click on a second time you will get this box okay so now we need to earn the second time you are getting right so let us understand this how we can have it let us enhance the state one minute let me write then this is a different case okay in this let me write another script grass alert with text box and also it covers the radio button okay main stick the same right so now I need to identify the third element and it will look on here third one so identify that element inspect this element this is the third one so driver dot find element by dot XPath dot click okay and then I need to click on this button drivers dot find element by dot XPath okay dot click now first time you will not get anything so what we need to enter the text here right so first we need to switch to that alert so driver dot switch to dot alert so this will alert to this this will point to this part right now we need to enter the value in the text box so what we need to do now we should not accept first we need to enter the value M in taksim so send case testing and then think accept will not be there we need to use one more command for accepting alert out dot except now it will enter the value there and it will click on OK button it will come out we need to verify this text is cut or not we need to capture this text okay and copy this expert so we need to write a condition if we can directly take okay so if this is the string okay so this is XPath let me take actual string equal to what is an actual string this is my actual string copy here and then we need to get the this is a string type variable and you took a I need to get the X part of this right so XPath so driver dot find element by dot XPath space weather expert dot get text get fixed done so now it will give us the actual text no that will be stored again in some way edible this is expected okay this is expected and this is actual actual strength now we have both we can verify if expected string dot equals touchscreen okay equal to two then some dot out dot println test is passed okay done so what's verification instant ii verification second time again we need to click on this button now if you click on this button again we need to use same x pub same this one right if you can click so the second time you are a first-time firstime click now once we have done all the validation now we need to click on the second time second time click now same thing you can use because the button is same same now if we click on the second time it will open up the agate text box first moment what happens it is actually giving the wrong information click test ok then click here again ok second time it is coming now second time if you want to enter some value here we can enter or else directly we can select the tick checkbox here now let us see how to select this checkbox now after selecting after pocketing after three teens and second time it will again we need to switch to the electric so driver dot H 2 dot alert dot here we have some options not send case dot alert do we have click method have indicate using get text to modify hundred shows we just make this mess because get close get text has four notifies entities test dot we don't have Cindy kiss the dot you should have one method here choosing the ticket don't it is coming flavor dot find element sorry six two dot new eyelet dot text oh this is Thomas Keller this is the window base we cannot get any property of this character sort even textbooks also we directly use in the case method but the text box is cannot identify we haven't identified write it directly we use end case after ever to not send case like you have used directly but because of that reason because we cannot identify the properties because that is the window based effect our typist so electric box there is another methods little bit shake it under quit the textbox under quit textbox sheet if it is window based application so we cannot identify we should identify only with Auto IT there is another concept actually that will deal with the window based applications this is the text box if you find any window windows between me when you do some transactions if you want to close that windows if you want to select some options then you need to go for auto Italy there is no option okay so I will find this option I will check it tomorrow let you know tomorrow okay this is a path if you have some methods we can use it or written so we can go for auto it if there is no other way but sometimes even some alert boxes so which is pop ups filled with web-based or pop-ups they are not window based pop-ups in that particular case you will able to identify this by using properties directly can select with this by using check power expert or something else so here it is not even oh here actually that's the problem until a person across this we cannot select this okay or else we can check with IDE how it is doing let me check let me record the script okay we will see what the how it is how it is you will get some idea okay let me record this now it is in the recording mode and set text entering some text okay again I am kicking [Music] okay now this is important for us I need to set text again enter text here and then see now these operations will not record actually click on this one okay button what it is happening c SN pronto present it is not enter test of the from the next target is equal to text also on my next from text CSS it is taken from CSS is equal to button dot bit again dot button while it is not taking anything CSS equal to let us try this okay dudes don't think whether it is working on a door now let us try so now driver dot finally amend by dot CSS selector click copy here because sometimes ID is generated right so that is works for us close dot click so for that also we need to check box also we need to use click button and then dismiss this and we go click and then on before that here we need to switch right as this past Niger some mystic except actress ting comparison is done so after capturing this pony i I use it on get text right so but I should close the popups if I want to get this message I did some mistake to just document after clicking on this first thing is let me open okay I need to enter some value then okay then all I will get this right so what I have done here is a capture expect actual string I have captured but I haven't accepted that alert box for that reason this test will fail so I need to again driver dot switch to dot accept allure to dot accept I should do and then I'll get the string actual string after clicking on that button I'll get the actual string right this is my actual string then I can compare this one so this one now this is correct right got my mistake do you understand how I have written this one I expected right after clicking on the okay sorry Here I am sending the send key is testing here itself I'm accepting so in that case it is not required accepting you are not equity is duplication sorry Here I am doing accepted I forgot this okay entering some text accepting immediately then I got the expected gods actual both are comparing sir then test will be passed and the second time again I need to open the alert right so for that reason I have opened a statement and after that click on that button click and then and accept I ever taught yes Stu dot accept alert dot accept now let's try and see [Music] selected I think let me put okay some toys error is thrown unexpected model dialogue you mean text inspector models are almost moment and then this is a select a value but an element in for database enabled true ohms singles okay let me put some value in the textbook text box also because up till unless this it is not our line one second before accepting this button also driver dot find element sorry I ordered six to six to dot that dot side just in grateful and then click on the radio button here except let us wait for some time here I'll use thread dot sleep because we will see whether checkbox is selected or not third door sleep you suppose three thousand milliseconds between except suppose acceleration declaration insert this one exception it will throw runtime exception so we need to include this part just I put this for wait for some time because we can see whether button is selected or not send it is then selected and accept known as a please it is accepted but still it is very fast just move let me take by default it is selected or not one minute it is not selected by default so it is gay it is giving some exception here actually it is able to select which is giving some exception [Music] [Music] can I just ate for some time yes more time two times after I drink if it will wait for some time and hear that sector is not selected actually it's not select action let us see that that's a Content ID okay so I will stop for today here so just try these two things our two boxes and everything it also try to finish the last class frames iframes guess once you finish this tomorrow's class will go for how to handle windows on multiple browsers [Music]
Info
Channel: SDET- Automation Techie
Views: 17,476
Rating: 4.9000001 out of 5
Keywords: Manual Testing, Selenium, QTP, UFT, IDE, Automation Testing, Grid, Web Driver, Automation Frameworks, Testing Tools Online Training, Software Testing Videos, SQL, Oracle, Java, Selenium Webdriver Handling IFrames
Id: Ndrx0ZRNWx0
Channel Id: undefined
Length: 62min 35sec (3755 seconds)
Published: Sat Jul 01 2017
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.