Example #1
0
def gearMenu_fileUpload(testcaseId, appName, inFileName):
	stepName = "gearMenu file upload - "+ appName +" / "+ inFileName
	myConfigData = bs_common.getConfigurationData()
	myFileImportPath = myConfigData["fileImportPath"]
	myFileName, myFileExtenstion = inFileName.split(".")

	target.processes()["Safari"].mainWindow().webViews()[0].webViews()[appName].buttons().firstWithPredicate_("name contains 'Document and Sort Options'").click()
	
	myAppFileType = getFileTypeFromAppName(appName)
	
	target.processes()["Safari"].mainWindow().webViews()[0].webViews()[appName].menuItems()["Upload "+ myAppFileType +"..."].staticTexts()["Upload "+ myAppFileType +"..."].click()
	
	if target.processes()["Safari"].mainWindow().webViews()[0].webViews()[appName].staticTexts().firstWithPredicate_("name like 'Choose * upload*'"):
		baseObjectPath.buttons()["Choose Files"].click()
					
	keyboard.typeString_withModifiersMask_("g", (kUIAShiftKeyMask|kUIACommandKeyMask))
	keyboard.typeString_(myFileImportPath +"/"+ inFileName)	
	keyboard.typeVirtualKey_(kVK_Return)
	time.sleep(1)
	target.processes()["Safari"].mainWindow().sheet().buttons()["Choose"].click()
	
	target.processes()["Safari"].mainWindow().webViews()[0].webViews()[appName].buttons()["Cancel\n"].waitForInvalid()
	
	if not target.processes()["Safari"].mainWindow().webViews()[0].webViews()[appName].staticTexts().firstWithPredicate_("name like '"+ myFileName +"*'"):
		bs_common.writeResults(testcaseId, stepName, "FAIL")
		msg = "FAIL - "+ stepName
		bs_common.scriptFailedExit(msg)
		
	else:
		bs_common.writeResults(testcaseId, stepName, "PASS")	
		msg = "PASS - "+ stepName
		bs_common.writeItemToLogFile(msg)
Example #2
0
def gearMenu_fileUpload(testcaseId, item):
	stepName = "gearMenu file upload - "+ item
	baseObjectPath = target.processes()["Safari"].mainWindow().webViews()[0].webViews().firstWithPredicate_("className like 'UIAWebView'")

	myConfigData = bs_common.getConfigurationData()
	myFileImportPath = myConfigData["fileImportPath"]
	
	myFileName, myAppName = getAppNameAndFileName(item)
	
	baseObjectPath.buttons().firstWithPredicate_("name contains '"+ myAppName +"'").click()	
	baseObjectPath.buttons().firstWithPredicate_("name contains 'Document and Sort Options'").click()
	
	myAppFileType = getFileTypeFromAppName(myAppName)
	
	baseObjectPath.menuItems()["Upload "+ myAppFileType +"..."].staticTexts()["Upload "+ myAppFileType +"..."].click()	
	keyboard.typeString_withModifiersMask_("g", (kUIAShiftKeyMask|kUIACommandKeyMask))
	keyboard.typeString_(myFileImportPath)
	target.processes()["Safari"].mainWindow().sheet().buttons()["Go"].click()
	
	target.processes()["Safari"].mainWindow().sheet().radioButtons()["list view"].click()	
	target.processes()["Safari"].mainWindow().sheet().outlines()["list view"].visibleColumns()["Name"].textFields()[0].click()
	
	for i in target.processes()["Safari"].mainWindow().sheet().outlines()["list view"].visibleColumns()["Name"].textFields():
		if i.value() == item:
			target.processes()["Safari"].mainWindow().sheet().buttons()["Choose"].click()
			break
		
		else:
			keyboard.typeVirtualKey_(kVK_DownArrow)
	
	time.sleep(2)
			
	if baseObjectPath.buttons()["Replace\n"]:
		baseObjectPath.buttons()["Replace\n"].click()
		
	timeout = 0
	if baseObjectPath.staticTexts().firstWithPredicate_("value like '*Uploading*'"):
		while timeout < 120:
			if bool(baseObjectPath.staticTexts().firstWithPredicate_("value like '*Uploading*'").isValid()):
				time.sleep(1)
				timeout = timeout + 1
				
			else:
				if timeout > 0:
					break	
		
	if not baseObjectPath.staticTexts().firstWithPredicate_("name like '*"+ myFileName +"*'"):
		bs_common.writeResults(testcaseId, stepName, "FAIL")
		msg = "FAIL - "+ stepName
		bs_common.scriptFailedExit(msg)
		
	else:
		bs_common.writeResults(testcaseId, stepName, "PASS")	
		msg = "PASS - "+ stepName
		bs_common.writeItemToLogFile(msg)
Example #3
0
def iCloudSignIn(testcaseId):
    stepName = "icloud sign in"
    myConfigData = bs_common.getConfigurationData()

    if not target.processes()["Safari"].mainWindow().webViews()[0].textFields()["Apple ID"]:
        bs_common.writeResults(testcaseId, stepName, "FAIL")
        msg = "FAIL - bs_icloud.iCloudSignIn: failed to find Apple ID field"
        bs_common.scriptFailedExit(msg)

    try:
        target.processes()["Safari"].mainWindow().webViews()[0].textFields()["Apple ID"].click()
        keyboard.typeString_(myConfigData["iCloudAccount"]["userid"])

    except:
        bs_common.writeResults(testcaseId, stepName, "FAIL")
        msg = "FAIL - bs_icloud.iCloudSignIn: failed to enter userid info"
        bs_common.scriptFailedExit(msg)

    try:
        target.processes()["Safari"].mainWindow().webViews()[0].textFields()["Password"].click()
        keyboard.typeString_(myConfigData["iCloudAccount"]["password"])

    except:
        bs_common.writeResults(testcaseId, stepName, "FAIL")
        msg = "FAIL - bs_icloud.iCloudSignIn: failed to enter password info"
        bs_common.scriptFailedExit(msg)

    try:
        target.processes()["Safari"].mainWindow().webViews()[0].buttons().firstWithPredicate_(
            "helpTag like 'Sign In'"
        ).click()

    except:
        bs_common.writeResults(testcaseId, stepName, "FAIL")
        msg = "FAIL - bs_icloud.iCloudSignIn: failed to click sign in button"
        bs_common.scriptFailedExit(msg)

    time.sleep(1)
    if not target.processes()["Safari"].mainWindow().webViews()[0].images()["iCloud"]:
        bs_common.writeResults(testcaseId, stepName, "FAIL")
        msg = "FAIL - bs_icloud.iCloudSignIn: failed to find iCloud icon after sign in"
        bs_common.scriptFailedExit(msg)

    else:
        bs_common.writeResults(testcaseId, stepName, "PASS")
        msg = "PASS - " + stepName
        bs_common.writeItemToLogFile(msg)
Example #4
0
def fileReplace(testcaseId, appName, inFileName, inNewFileName):
	stepName = "file replace - '"+ inFileName +"' with '"+ inNewFileName +"'"
	baseObjectPath = target.processes()["Safari"].mainWindow().webViews()[0].webViews().firstWithPredicate_("className like 'UIAWebView'")

	myConfigData = bs_common.getConfigurationData()
	myFileImportPath = myConfigData["fileImportPath"]
	
	baseObjectPath.buttons().firstWithPredicate_("name contains '"+ appName +"'").click()	

	if not baseObjectPath.staticTexts().firstWithPredicate_("name like '*"+ inFileName +"*'"):
		bs_common.writeResults(testcaseId, stepName, "FAIL")
		msg = "FAIL - "+ stepName
		bs_common.scriptFailedExit(msg)
			
	baseObjectPath.buttons().firstWithPredicate_("name contains 'Document and Sort Options'").click()
	
	myAppFileType = getFileTypeFromAppName(myAppName)
	
	baseObjectPath.menuItems()["Upload "+ myAppFileType +"..."].staticTexts()["Upload "+ myAppFileType +"..."].click()	
	keyboard.typeString_withModifiersMask_("g", (kUIAShiftKeyMask|kUIACommandKeyMask))
	keyboard.typeString_(myFileImportPath)
	target.processes()["Safari"].mainWindow().sheet().buttons()["Go"].click()
	
	target.processes()["Safari"].mainWindow().sheet().radioButtons()["list view"].click()	
	target.processes()["Safari"].mainWindow().sheet().outlines()["list view"].visibleColumns()["Name"].textFields()[0].click()
	
	for i in target.processes()["Safari"].mainWindow().sheet().outlines()["list view"].visibleColumns()["Name"].textFields():
		if i.value() == item:
			target.processes()["Safari"].mainWindow().sheet().buttons()["Choose"].click()
			break
		
		else:
			keyboard.typeVirtualKey_(kVK_DownArrow)
		
	if baseObjectPath.buttons()["Replace\n"]:
		baseObjectPath.buttons()["Replace\n"].click()