def test_dragdropunit(): client = WindmillTestClient(__name__) client.open( url= u'http://tutorial.getwindmill.com/windmill-unittests/jqueryui152/demos/functional/index.html' ) client.waits.forPageLoad(timeout=u'40000') client.waits.forElement(link=u'Draggable', timeout=u'40000') #test the draggable widgets client.click(link=u'Draggable') client.dragDropElem(pixels=u'(200,0)', id=u'dragImage') client.waits.sleep(milliseconds=u'500') client.dragDropElem(pixels=u'(300,0)', id=u'divDrag') #client.asserts.assertProperty(validator=u'style.left|289px', id=u'divDrag') client.dragDropElem(xpath="//div[@id='draggable-handle-div']/div[1]", pixels='(257,0)') #client.asserts.assertProperty(validator=u'style.left|246px', id=u'draggable-handle-div') client.dragDropElem(link=u'Drag me', pixels=u'(420,0)') #client.asserts.assertProperty(validator=u'style.left|409px', id=u'draggable-dragPrevention') #test the droppable widgets client.click(link=u'Droppable') client.click(link=u'Droppable') client.waits.sleep(milliseconds=u'500') client.dragDropElem(xpath="//div[@id='droppablePhotos']/ul/li[2]/img", pixels='(310,0)') client.waits.sleep(milliseconds=u'1200') client.asserts.assertProperty( xpath="//div[@id='droppablePhotos']/div/img", validator='src|templates/images/P1010039.JPG') client.dragDropElemToElem(xpath="//div[@id='droppablePhotos']/ul/li/img", optxpath="//div[@id='droppablePhotos']/div/img") client.waits.sleep(milliseconds=u'500') client.asserts.assertProperty(xpath="//div[@id='droppablePhotos']/div/img", validator='src|P1010020.JPG') client.dragDropElemToElem(xpath="//div[@id='ui-gen-7']/div[3]/div[1]", optxpath="//div/div[3]/div[4]") client.waits.sleep(milliseconds=u'500') client.dragDropElemToElem(xpath="//div/div[3]/div[2]", optxpath="//div/div[3]/div[4]") client.waits.sleep(milliseconds=u'500') client.asserts.assertElemJS( xpath="//div/div[3]/div[4]", js=u"element.innerHTML.indexOf('Dropped!') != -1") client.dragDropElem(xpath="//div/div[3]/div[2]", pixels='(0,200)') client.waits.sleep(milliseconds=u'500') client.asserts.assertElemJS( xpath="//div/div[3]/div[4]", js=u"element.innerHTML.indexOf('Dropped! Dropped!') != -1") #test the sortable widgets client.click(link=u'Sortable') client.click(link=u'Sortable') client.waits.sleep(milliseconds=u'500') client.storeVarFromJS( options= "before|document.getElementById('user_Susan').parentNode.childNodes.length" ) client.dragDropElem(pixels='(160,0)', id='user_Susan') client.storeVarFromJS( options= "after|document.getElementById('user_Susan').parentNode.childNodes.length" ) client.execIDEJS( js= "windmill.varRegistry.items['before'] != windmill.varRegistry.items['After'];" ) #test the dialog widgets client.click(link=u'Dialog') client.click(link=u'Dialog') client.dragDropElem( xpath="//body[@id='functional_demos']/div[3]/div[1]/div[1]", pixels='(150,0)') #test the slider widgets client.click(link=u'Slider') client.click(link=u'Slider') client.waits.sleep(milliseconds=u'500') client.dragDropElem(xpath="//div[@id='slider3']/a/div", pixels='(80,0)') client.dragDropElem(xpath="//div[@id='slider1']/a[1]/div", pixels='(50,0)') client.waits.sleep(milliseconds=u'500') client.dragDropElem(xpath="//div[@id='slider1']/a[2]/div", pixels='(-20,0)') client.click(link=u'Draggable')
def test_wmunti1(): client = WindmillTestClient(__name__, assertions=False) assert client.open( url= u'http://tutorial.getwindmill.com/windmill-unittests/unit_tester.html' )['result'] assert client.click(id=u'subBtn')['result'] # Tests that sleeps actually wait for long enough start = datetime.now() assert client.waits.sleep(milliseconds=u'3000')['result'] end = datetime.now() print(end - start) assert (end - start).seconds >= 3 assert client.asserts.assertText(validator=u'', id=u'sleeper')['result'] # Tests that an 8 second sleep actually waits long enough start = datetime.now() assert client.waits.sleep(milliseconds=u'8000')['result'] end = datetime.now() print(end - start) assert (end - start).seconds >= 8 #execIDEJS and storeURL test assert client.storeURL(link='AwesomeLink') assert client.execIDEJS( js= 'windmill.varRegistry.items["{$AwesomeLink}"] = windmill.varRegistry.items["{$AwesomeLink}"].replace(\'http\', \'abcd\');' ) assert client.asserts.assertJS( js="'{$AwesomeLink}' == 'abcd://www.awesome.com/';") #unit tests for select by value assert client.select(val='d', id='flavor')['result'] assert client.asserts.assertSelected(validator='d', id='flavor')['result'] assert client.asserts.assertText(validator=u'Slept', id=u'sleeper')['result'] assert client.type(text=u'my test text', id=u'junkfield')['result'] assert client.asserts.assertValue(validator=u'my test text', id=u'junkfield')['result'] assert client.radio(id=u'cougar')['result'] assert client.asserts.assertChecked(id=u'cougar')['result'] assert client.radio(id=u'duck')['result'] assert client.asserts.assertChecked(id=u'duck')['result'] assert client.check(id=u'Smallpox')['result'] assert client.asserts.assertChecked(id=u'Smallpox')['result'] assert not client.asserts.assertChecked(id=u'Mumps')['result'] assert not client.asserts.assertChecked(id=u'Dizziness')['result'] assert client.check(id=u'Mumps')['result'] assert client.asserts.assertChecked(id=u'Mumps')['result'] assert not client.asserts.assertChecked(id=u'Dizziness')['result'] assert client.check(id=u'Dizziness')['result'] assert client.asserts.assertChecked(id=u'Dizziness')['result'] assert client.type(text=u'The text area tester', name=u'story')['result'] assert client.asserts.assertValue(validator=u'The text area tester', id=u'story')['result'] assert client.select(option=u'Strawberry', id=u'flavor')['result'] assert client.asserts.assertSelected(validator=u'b', id=u'flavor')['result'] assert client.select(option=u'Rum and Raisin', id=u'flavor')['result'] assert client.asserts.assertSelected(validator=u'c', id=u'flavor')['result'] assert not client.asserts.assertSelected(validator=u'd', id=u'flavor')['result'] assert client.select(option=u'Peach and Orange', id=u'flavor')['result'] assert client.asserts.assertSelected(validator=u'd', id=u'flavor')['result'] assert client.click(id=u'clickme')['result'] assert client.asserts.assertText(validator=u'Clicked', id=u'clickme')['result'] assert client.doubleClick(id=u'dblclickme')['result'] assert client.asserts.assertText(validator=u'Double Clicked', id=u'dblclickme')['result'] assert client.mouseDown(id=u'mousedownme')['result'] assert client.asserts.assertText(validator=u'mouse downed', id=u'mousedownme')['result'] assert client.mouseUp(id=u'mouseupme')['result'] assert client.mouseOver(id=u'mouseoverme')['result'] assert client.asserts.assertText(validator=u'mouse overred', id=u'mouseoverme')['result'] assert client.mouseOut(id=u'mouseoverme')['result'] assert client.asserts.assertText(validator=u'mouseouted', id=u'mouseoverme')['result'] assert client.asserts.assertText(validator=u'mouse upped', id=u'mouseupme')['result'] assert client.asserts.assertNode(id=u'amIhere')['result'] assert client.asserts.assertProperty(validator=u'style.height|50px', id=u'amIhere')['result'] assert not client.asserts.assertNode(id=u'doesntExist')['result'] assert not client.asserts.assertNode(id=u'created')['result'] assert client.click(id=u'wfeBtn')['result'] assert client.waits.forElement(id=u'created', timeout=u'40000')['result'] assert client.asserts.assertNode(id=u'created')['result'] assert client.asserts.assertJS( js=u'window.document.title == "windmill_js_unit"') assert client.asserts.assertIDEJS( js=u'window.document.title == "Windmill IDE"') assert client.execJS(js=u'window.awesome = true;') assert client.asserts.assertJS(js=u'window.awesome == true;') assert client.execIDEJS(js=u'window.awesome = false;') assert client.asserts.assertIDEJS(js=u'window.awesome == false;')
def test_wmunti1(): client = WindmillTestClient(__name__, assertions=False) assert client.open(url=u'http://tutorial.getwindmill.com/windmill-unittests/unit_tester.html')['result'] assert client.click(id=u'subBtn')['result'] # Tests that sleeps actually wait for long enough start = datetime.now() assert client.waits.sleep(milliseconds=u'3000')['result'] end = datetime.now() print (end - start) assert ( end - start ).seconds >= 3 assert client.asserts.assertText(validator=u'', id=u'sleeper')['result'] # Tests that an 8 second sleep actually waits long enough start = datetime.now() assert client.waits.sleep(milliseconds=u'8000')['result'] end = datetime.now() print (end - start) assert ( end - start ).seconds >= 8 #execIDEJS and storeURL test assert client.storeURL(link='AwesomeLink') assert client.execIDEJS(js='windmill.varRegistry.items["{$AwesomeLink}"] = windmill.varRegistry.items["{$AwesomeLink}"].replace(\'http\', \'abcd\');') assert client.asserts.assertJS(js="'{$AwesomeLink}' == 'abcd://www.awesome.com/';") #unit tests for select by value assert client.select(val='d', id='flavor')['result'] assert client.asserts.assertSelected(validator='d', id='flavor')['result'] assert client.asserts.assertText(validator=u'Slept', id=u'sleeper')['result'] assert client.type(text=u'my test text', id=u'junkfield')['result'] assert client.asserts.assertValue(validator=u'my test text', id=u'junkfield')['result'] assert client.radio(id=u'cougar')['result'] assert client.asserts.assertChecked(id=u'cougar')['result'] assert client.radio(id=u'duck')['result'] assert client.asserts.assertChecked(id=u'duck')['result'] assert client.check(id=u'Smallpox')['result'] assert client.asserts.assertChecked(id=u'Smallpox')['result'] assert not client.asserts.assertChecked(id=u'Mumps')['result'] assert not client.asserts.assertChecked(id=u'Dizziness')['result'] assert client.check(id=u'Mumps')['result'] assert client.asserts.assertChecked(id=u'Mumps')['result'] assert not client.asserts.assertChecked(id=u'Dizziness')['result'] assert client.check(id=u'Dizziness')['result'] assert client.asserts.assertChecked(id=u'Dizziness')['result'] assert client.type(text=u'The text area tester', name=u'story')['result'] assert client.asserts.assertValue(validator=u'The text area tester', id=u'story')['result'] assert client.select(option=u'Strawberry', id=u'flavor')['result'] assert client.asserts.assertSelected(validator=u'b', id=u'flavor')['result'] assert client.select(option=u'Rum and Raisin', id=u'flavor')['result'] assert client.asserts.assertSelected(validator=u'c', id=u'flavor')['result'] assert not client.asserts.assertSelected(validator=u'd', id=u'flavor')['result'] assert client.select(option=u'Peach and Orange', id=u'flavor')['result'] assert client.asserts.assertSelected(validator=u'd', id=u'flavor')['result'] assert client.click(id=u'clickme')['result'] assert client.asserts.assertText(validator=u'Clicked', id=u'clickme')['result'] assert client.doubleClick(id=u'dblclickme')['result'] assert client.asserts.assertText(validator=u'Double Clicked', id=u'dblclickme')['result'] assert client.mouseDown(id=u'mousedownme')['result'] assert client.asserts.assertText(validator=u'mouse downed', id=u'mousedownme')['result'] assert client.mouseUp(id=u'mouseupme')['result'] assert client.mouseOver(id=u'mouseoverme')['result'] assert client.asserts.assertText(validator=u'mouse overred',id=u'mouseoverme')['result'] assert client.mouseOut(id=u'mouseoverme')['result'] assert client.asserts.assertText(validator=u'mouseouted',id=u'mouseoverme')['result'] assert client.asserts.assertText(validator=u'mouse upped', id=u'mouseupme')['result'] assert client.asserts.assertNode(id=u'amIhere')['result'] assert client.asserts.assertProperty(validator=u'style.height|50px', id=u'amIhere')['result'] assert not client.asserts.assertNode(id=u'doesntExist')['result'] assert not client.asserts.assertNode(id=u'created')['result'] assert client.click(id=u'wfeBtn')['result'] assert client.waits.forElement(id=u'created', timeout=u'40000')['result'] assert client.asserts.assertNode(id=u'created')['result'] assert client.asserts.assertJS(js=u'window.document.title == "windmill_js_unit"') assert client.asserts.assertIDEJS(js=u'window.document.title == "Windmill IDE"') assert client.execJS(js=u'window.awesome = true;') assert client.asserts.assertJS(js=u'window.awesome == true;') assert client.execIDEJS(js=u'window.awesome = false;') assert client.asserts.assertIDEJS(js=u'window.awesome == false;')