From 5e4408e02440634c5fef1a795b75e6080536d8dc Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 5 Mar 2025 11:28:01 +0530 Subject: [PATCH 01/51] Add files via upload --- Java/Activities/Activity11.java | 31 ++++++++++++++ Java/Activities/Activity12.java | 22 ++++++++++ Java/Activities/Activity13.java | 26 ++++++++++++ Java/Activities/Activity14.java | 38 ++++++++++++++++++ Java/Activities/Activity2.java | 38 ++++++++++++++++++ Java/Activities/Activity3.java | 24 +++++++++++ Java/Activities/Activity4.java | 27 +++++++++++++ Java/Activities/Activity5.java | 37 +++++++++++++++++ Java/Activities/Activity6.java | 56 ++++++++++++++++++++++++++ Java/Activities/Activity7.java | 71 +++++++++++++++++++++++++++++++++ Java/Activities/Activity8.java | 5 +++ Java/Activities/Activity9.java | 30 ++++++++++++++ Java/Activities/Car.java | 38 ++++++++++++++++++ Java/Activities/Example.java | 20 ++++++++++ Java/Activities/FirstClass.java | 9 +++++ 15 files changed, 472 insertions(+) create mode 100644 Java/Activities/Activity11.java create mode 100644 Java/Activities/Activity12.java create mode 100644 Java/Activities/Activity13.java create mode 100644 Java/Activities/Activity14.java create mode 100644 Java/Activities/Activity2.java create mode 100644 Java/Activities/Activity3.java create mode 100644 Java/Activities/Activity4.java create mode 100644 Java/Activities/Activity5.java create mode 100644 Java/Activities/Activity6.java create mode 100644 Java/Activities/Activity7.java create mode 100644 Java/Activities/Activity8.java create mode 100644 Java/Activities/Activity9.java create mode 100644 Java/Activities/Car.java create mode 100644 Java/Activities/Example.java create mode 100644 Java/Activities/FirstClass.java diff --git a/Java/Activities/Activity11.java b/Java/Activities/Activity11.java new file mode 100644 index 0000000000..211bfad16e --- /dev/null +++ b/Java/Activities/Activity11.java @@ -0,0 +1,31 @@ +package com.java.fst; +import java.util.HashMap; + +public class Activity11 { + public static void main(String[] args) { + HashMap hash_map = new HashMap(); + hash_map.put(1, "Red"); + hash_map.put(2, "Green"); + hash_map.put(3, "Blue"); + hash_map.put(4, "White"); + hash_map.put(5, "Black"); + + // Print the Map + System.out.println("The Original map: " + hash_map); + + // Remove one colour + hash_map.remove(4); + // Map after removing a colour + System.out.println("After removing White: " + hash_map); + + // Check if green exists + if(hash_map.containsValue("Green")) { + System.out.println("Green exists in the Map"); + } else { + System.out.println("Green does not exist in the Map"); + } + + // Print the size of the Map + System.out.println("Number of pairs in the Map is: " + hash_map.size()); + } +} \ No newline at end of file diff --git a/Java/Activities/Activity12.java b/Java/Activities/Activity12.java new file mode 100644 index 0000000000..37db33750b --- /dev/null +++ b/Java/Activities/Activity12.java @@ -0,0 +1,22 @@ +package com.java.fst; + + +interface Addable { + int add(int a , int b); +} +public class Activity12 { + public static void main(String[] args) { + Addable ad1 = (num1 , num2) -> num1 + num2; + + + Addable ad2 = (int num1 , int num2) -> {; + return num1+num2; + }; + + System.out.println(ad1.add(10, 50)); + System.out.println(ad1.add(20, 90)); + + + +} +} \ No newline at end of file diff --git a/Java/Activities/Activity13.java b/Java/Activities/Activity13.java new file mode 100644 index 0000000000..561f458f05 --- /dev/null +++ b/Java/Activities/Activity13.java @@ -0,0 +1,26 @@ +package com.java.fst; +import java.util.*; + +public class Activity13 { + + public static void main(String[] args) { + Scanner scan = new Scanner(System.in); + ArrayList list = new ArrayList(); + Random indexGen = new Random(); + + System.out.print("Enter integers please "); + System.out.println("(EOF or non-integer to terminate): "); + + while(scan.hasNextInt()) { + list.add(scan.nextInt()); + } + + Integer nums[] = list.toArray(new Integer[0]); + int index = indexGen.nextInt(nums.length); + System.out.println("Index value generated: " + index); + System.out.println("Value in arary at generated index: " + nums[index]); + + scan.close(); + } + +} diff --git a/Java/Activities/Activity14.java b/Java/Activities/Activity14.java new file mode 100644 index 0000000000..62022d1559 --- /dev/null +++ b/Java/Activities/Activity14.java @@ -0,0 +1,38 @@ +package com.java.fst; +import java.io.File; +import java.io.IOException; +import org.apache.commons.io.FileUtils; + + public class Activity14 { + public static void main(String[] args) throws IOException { + try { + File file = new File("src/newfile.txt"); + boolean fStatus = file.createNewFile(); + if(fStatus) { + System.out.println("File created successfully!"); + } else { + System.out.println("File already exists at this path."); + } + + //get the file Object + File fileUtil = FileUtils.getFile("src/newfile.txt"); + //Read file + System.out.println("Data in file: " + FileUtils.readFileToString(fileUtil, "UTF8")); + + //Create directory + File destDir = new File("resources"); + //Copy file to directory + FileUtils.copyFileToDirectory(file, destDir); + + //Get file from new directory + File newFile = FileUtils.getFile(destDir, "src/newfile.txt"); + //Read data from file + String newFileData = FileUtils.readFileToString(newFile, "UTF8"); + //Print it + System.out.println("Data in new file: " + newFileData); + } catch(IOException errMessage) { + System.out.println(errMessage); + } + } + } + diff --git a/Java/Activities/Activity2.java b/Java/Activities/Activity2.java new file mode 100644 index 0000000000..688b9ec699 --- /dev/null +++ b/Java/Activities/Activity2.java @@ -0,0 +1,38 @@ +package com.java.fst; + +import javax.swing.tree.FixedHeightLayoutCache; + +public class Activity2 { + public static void main(String[] args) { + + Activity2 actobj = new Activity2(); + + int[] inputArr= {10,77,10,54,11,10}; + + int searchNum = 10; + int finalSum = 30; + + System.out.println("Does the sum equal to 30 ? " + actobj.result(inputArr , searchNum , finalSum)); + + } + + public boolean result (int [] nums , int searchNum , int fixedSum) + { + + int tempSum = 0; + + for(int num : nums) { + if (num == searchNum) + { + tempSum = tempSum+searchNum; + + } + if(tempSum > fixedSum) + break; + + } + return tempSum == fixedSum; + + } + +} diff --git a/Java/Activities/Activity3.java b/Java/Activities/Activity3.java new file mode 100644 index 0000000000..469ae56c91 --- /dev/null +++ b/Java/Activities/Activity3.java @@ -0,0 +1,24 @@ +package com.java.fst; + +public class Activity3 { + public static void main(String[] args) { + double seconds = 1000000000; + double EarthSeconds = 31557600; + double MercurySeconds= 0.2408467; + double VenusSeconds = 0.61519726; + double MarsSeconds = 1.8808158; + double JupiterSeconds = 11.862615; + double SaturnSeconds = 29.447498; + double UranuSeconds = 84.016846; + double NeptuneSeconds = 164.79132; + + System.out.println("Age on Mercury :" + seconds / EarthSeconds / MercurySeconds); + System.out.println("Age on Venus :" + seconds / EarthSeconds / VenusSeconds); + System.out.println("Age on Earth :" + seconds / EarthSeconds ); + System.out.println("Age on Mars :" + seconds / EarthSeconds / MarsSeconds); + System.out.println("Age on Jupiter :" + seconds / EarthSeconds / JupiterSeconds); + System.out.println("Age on Uranu :" + seconds / EarthSeconds / UranuSeconds); + System.out.println("Age on Neptune :" + seconds / EarthSeconds / NeptuneSeconds); + + } +} diff --git a/Java/Activities/Activity4.java b/Java/Activities/Activity4.java new file mode 100644 index 0000000000..ce40f063a3 --- /dev/null +++ b/Java/Activities/Activity4.java @@ -0,0 +1,27 @@ +package com.java.fst; + +public class Activity4 { + public static void main(String[] args) + { + + int[] arr = new int[] {78, 34, 1, 3, 90, 34, 6, 55, 20}; + System.out.println("Array elements after sorting:"); + + for (int i = 0; i < arr.length; i++) + { + for (int j = i + 1; j < arr.length; j++) + { + int tmp = 0; + if (arr[i] > arr[j]) + { + tmp = arr[i]; + arr[i] = arr[j]; + arr[j] = tmp; + } + } + //prints the sorted element of the array + System.out.println(arr[i]); + } + } + +} diff --git a/Java/Activities/Activity5.java b/Java/Activities/Activity5.java new file mode 100644 index 0000000000..ec9a50a4fd --- /dev/null +++ b/Java/Activities/Activity5.java @@ -0,0 +1,37 @@ +package com.java.fst; + + +abstract class Book { + String title; + abstract void setTitle(String s); + + String getTitle() + { + return title; + } + +} + +class MyBook extends Book{ + public void setTitle(String s) + { + title = s; + +} +} + +public class Activity5 { + + public static void main(String []args) { + //Initialize title of the book + String title = "Hover Car Racer"; + //Create object for MyBook + Book newNovel = new MyBook(); + //Set title + newNovel.setTitle(title); + + //Print result + System.out.println("The title is: " + newNovel.getTitle()); + } +} + diff --git a/Java/Activities/Activity6.java b/Java/Activities/Activity6.java new file mode 100644 index 0000000000..8e61a2a049 --- /dev/null +++ b/Java/Activities/Activity6.java @@ -0,0 +1,56 @@ +package com.java.fst; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +class Plane { + private List passengers; + private int maxPassengers; + private Date lastTimeTookOf; + private Date lastTimeLanded; + + public Plane(int maxPassengers) { + this.maxPassengers = maxPassengers; + this.passengers = new ArrayList<>(); + } + + public void onboard(String passenger) { + this.passengers.add(passenger); + } + + public Date takeOff() { + this.lastTimeTookOf = new Date(); + return lastTimeTookOf; + } + + public void land() { + this.lastTimeLanded = new Date(); + this.passengers.clear(); + } + + public Date getLastTimeLanded() { + return lastTimeLanded; + } + + public List getPassengers() { + return passengers; + } +} + +public class Activity6 { + + public static void main(String[] args) throws InterruptedException { + Plane plane = new Plane(10); + + plane.onboard("John"); + plane.onboard("Steve"); + plane.onboard("Anna"); + + System.out.println("Plane took off at: " + plane.takeOff()); + System.out.println("People on the plane: " + plane.getPassengers()); + Thread.sleep(5000); + plane.land(); + System.out.println("Plane landed at: " + plane.getLastTimeLanded()); + System.out.println("People on the plane after landing: " + plane.getPassengers()); + } +} \ No newline at end of file diff --git a/Java/Activities/Activity7.java b/Java/Activities/Activity7.java new file mode 100644 index 0000000000..79852084e5 --- /dev/null +++ b/Java/Activities/Activity7.java @@ -0,0 +1,71 @@ +package com.java.fst; + + interface BicycleParts { + public int tyres = 2; + public int maxSpeed = 25; + } + + interface BicycleOperations { + public void applyBrake(int decrement); + public void speedUp(int increment); + } + + + class Bicycle implements BicycleParts, BicycleOperations { + + public int gears; + public int currentSpeed; + + + public Bicycle(int gears, int currentSpeed) { + this.gears = gears; + this.currentSpeed = currentSpeed; + } + + + public void applyBrake(int decrement) { + currentSpeed -= decrement; + System.out.println("Current speed: " + currentSpeed); + } + + public void speedUp(int increment) { + currentSpeed += increment; + System.out.println("Current speed: " + currentSpeed); + } + + + public String bicycleDesc() { + return("No of gears are "+ gears + "\nSpeed of bicycle is " + maxSpeed); + } + } + + + class MountainBike extends Bicycle { + + + public int seatHeight; + + + public MountainBike(int gears, int currentSpeed, int startHeight) { + + super(gears, currentSpeed); + seatHeight = startHeight; + } + public void setHeight(int newValue) { + seatHeight = newValue; + } + + public String bicycleDesc() { + return (super.bicycleDesc()+ "\nSeat height is " + seatHeight); + } + } + + public class Activity7 { + public static void main(String args[]) { + MountainBike mb = new MountainBike(3, 0, 25); + System.out.println(mb.bicycleDesc()); + mb.speedUp(20); + mb.applyBrake(5); + } + } + diff --git a/Java/Activities/Activity8.java b/Java/Activities/Activity8.java new file mode 100644 index 0000000000..45123c59bf --- /dev/null +++ b/Java/Activities/Activity8.java @@ -0,0 +1,5 @@ +package com.java.fst; + +public class Activity8 { + +} diff --git a/Java/Activities/Activity9.java b/Java/Activities/Activity9.java new file mode 100644 index 0000000000..280562c98d --- /dev/null +++ b/Java/Activities/Activity9.java @@ -0,0 +1,30 @@ +package com.java.fst; +import java.util.ArrayList; +import java.util.List; + +public class Activity9 { + public static void main(String[] args) { + + List myList = new ArrayList(); + + myList.add("Apple"); + myList.add("Watermelon"); + myList.add("Banana"); + + myList.add(3, "Pineapple"); + myList.add(1, "Kiwi"); + + System.out.println("Print All the Objects:"); + for(String fruits:myList){ + System.out.println(fruits); + } + + System.out.println("3rd element in the list is: " + myList.get(2)); + System.out.println("Is Pineapple is in list: " + myList.contains("Pineapple")); + System.out.println("Size of ArrayList: " + myList.size()); + + myList.remove("Kiwi"); + + System.out.println("New Size of ArrayList: " + myList.size()); + } +} \ No newline at end of file diff --git a/Java/Activities/Car.java b/Java/Activities/Car.java new file mode 100644 index 0000000000..30f8776bed --- /dev/null +++ b/Java/Activities/Car.java @@ -0,0 +1,38 @@ +package com.java.fst; + +public class Car { + + String color; + String transmission; + int make; + int tyres; + int doors; + + public Car(String color,String transmission , int make) + { + this.color=color; + this.transmission=transmission; + this.make=make; + + } + + public void characteristics() + { + System.out.println("color of the car is " + this.color); + System.out.println("Transmission of car " + this.transmission); + System.out.println("Make " + this.make); + System.out.println("Doors " + this.doors); + System.out.println("Tyres " + this.tyres); + + } + + public void accelerate() + { + System.out.println("Car moved forward"); + } + + public void brake() + { + System.out.println("Car stops"); + } +} diff --git a/Java/Activities/Example.java b/Java/Activities/Example.java new file mode 100644 index 0000000000..2471aed95d --- /dev/null +++ b/Java/Activities/Example.java @@ -0,0 +1,20 @@ +package com.java.fst; + +import java.util.ArrayList; +import java.util.List; + +public class Example { + public static void main(String[] args) { + List list = new ArrayList<>(); + list.add("Rick"); + list.add("Negan"); + list.add("Daryl"); + list.add("Glenn"); + list.add("Carl"); + + list.forEach( + (name) -> System.out.println(name) +); + +} +} diff --git a/Java/Activities/FirstClass.java b/Java/Activities/FirstClass.java new file mode 100644 index 0000000000..ead2b13b52 --- /dev/null +++ b/Java/Activities/FirstClass.java @@ -0,0 +1,9 @@ +package com.java.fst; + +public class FirstClass { + + public static void main(String[] args) { + System.out.println("Hello world"); + } + +} From f357933511080fa780b595672dc92332af9f72bb Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 5 Mar 2025 16:29:04 +0530 Subject: [PATCH 02/51] Add files via upload --- SQL/Activities/SQL_Activities_1-5.sql | 47 +++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 SQL/Activities/SQL_Activities_1-5.sql diff --git a/SQL/Activities/SQL_Activities_1-5.sql b/SQL/Activities/SQL_Activities_1-5.sql new file mode 100644 index 0000000000..402f31f942 --- /dev/null +++ b/SQL/Activities/SQL_Activities_1-5.sql @@ -0,0 +1,47 @@ +-- Activity 1 +CREATE TABLE salesman(salesman_id int , salesman_name varchar(32) , salesman_city varchar(32) , commission int) + +DESCRIBE salesman; +-- Activity 2 + +INSERT INTO salesman VALUES (5001 , 'James Hoog' , 'New York' , 15); +INSERT INTO salesman VALUES (5002 , 'Nail Knite' , 'Paris' , 13); +INSERT INTO salesman VALUES (5005 , 'Pit Alex' , 'London' , 11); +INSERT INTO salesman VALUES (5006 , 'Mc Lyon' , 'Paularis' , 14); +INSERT INTO salesman VALUES (5007 , 'Paul Adam' , 'Rome' , 13); +INSERT INTO salesman VALUES (5003 , 'Lauson hen' , 'San Jose' , 12); + +select * from salesman; + +-- Activity 3 +-- Show data from the salesman_id and salesman_city columns +SELECT salesman_id, salesman_city FROM salesman; + +-- show data of salesman from Paris +SELECT * from salesman where salesman_city = 'Paris'; + +-- Show salesman_id and commission of Paul Adam +SELECT salesman_id , commission from salesman where salesman_name = 'Paul Adam'; + +-- Activity 4 + +ALTER TABLE salesman ADD grade int; +UPDATE salesman set grade = 100; +select * from salesman; + + +-- Activity 5 + +-- Update the grade score of salesman from Rome to 200 +UPDATE salesman SET grade = 200 where SALESMAN_CITY='Rome'; + +-- Update the grade score of James Hoog to 300 +UPDATE salesman SET grade = 300 where SALESMAN_NAME='JamesHoog'; + +-- Update the name Mc Lyon to Pierre +UPDATE salesman set salesman_name='Pierre' where salesman_name='Mc Lyon'; + + +select * from salesman; + + From f54f15751561299c2d1e9a34caf1b04582a0e598 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 6 Mar 2025 11:04:53 +0530 Subject: [PATCH 03/51] Add files via upload --- SQL/Activities/SQL_Activities_6-8.sql | 74 +++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 SQL/Activities/SQL_Activities_6-8.sql diff --git a/SQL/Activities/SQL_Activities_6-8.sql b/SQL/Activities/SQL_Activities_6-8.sql new file mode 100644 index 0000000000..0ee9e83571 --- /dev/null +++ b/SQL/Activities/SQL_Activities_6-8.sql @@ -0,0 +1,74 @@ +-- Activity 6 + +create table orders( + order_no int primary key, purchase_amount float, order_date date, + customer_id int, salesman_id int); + +-- Add values to the table +INSERT ALL + INTO orders VALUES(70001, 150.5, TO_DATE('2012/10/05', 'YYYY/MM/DD'), 3005, 5002) + INTO orders VALUES(70009, 270.65, TO_DATE('2012/09/10', 'YYYY/MM/DD'), 3001, 5005) + INTO orders VALUES(70002, 65.26, TO_DATE('2012/10/05', 'YYYY/MM/DD'), 3002, 5001) + INTO orders VALUES(70004, 110.5, TO_DATE('2012/08/17', 'YYYY/MM/DD'), 3009, 5003) + INTO orders VALUES(70007, 948.5, TO_DATE('2012/09/10', 'YYYY/MM/DD'), 3005, 5002) + INTO orders VALUES(70005, 2400.6, TO_DATE('2012/07/27', 'YYYY/MM/DD'), 3007, 5001) + INTO orders VALUES(70008, 5760, TO_DATE('2012/08/15', 'YYYY/MM/DD'), 3002, 5001) + INTO orders VALUES(70010, 1983.43, TO_DATE('2012/10/10', 'YYYY/MM/DD'), 3004, 5006) + INTO orders VALUES(70003, 2480.4, TO_DATE('2012/10/10', 'YYYY/MM/DD'), 3009, 5003) + INTO orders VALUES(70012, 250.45, TO_DATE('2012/06/27', 'YYYY/MM/DD'), 3008, 5002) + INTO orders VALUES(70011, 75.29, TO_DATE('2012/08/17', 'YYYY/MM/DD'), 3003, 5007) + INTO orders VALUES(70013, 3045.6, TO_DATE('2012/04/25', 'YYYY/MM/DD'), 3002, 5001) +SELECT 1 FROM DUAL; + + select * from orders; + + -- Get all salesman ids without any repeated values +select distinct salesman_id from orders; + +-- Display the order number ordered by date in ascending order +select order_no, order_date from orders order by order_date; + +-- Display the order number ordered by purchase amount in descending order +select order_no, purchase_amount from orders order by purchase_amount DESC; + +-- Display the full data of orders that have purchase amount less than 500. +select * from orders where purchase_amount < 500; + +-- Display the full data of orders that have purchase amount between 1000 and 2000. +select * from orders where purchase_amount between 1000 and 2000; + + + +-- Activity 7 + +-- Write an SQL statement to find the total purchase amount of all orders. +select SUM(purchase_amount) AS "Total sum" from orders; + +-- Write an SQL statement to find the average purchase amount of all orders. +select AVG(purchase_amount) AS "Average" from orders; + +-- Write an SQL statement to get the maximum purchase amount of all the orders. +select MAX(purchase_amount) AS "Maximum" from orders; + +-- Write an SQL statement to get the minimum purchase amount of all the orders. +select MIN(purchase_amount) AS "Minumum" from orders; + +-- Write an SQL statement to find the number of salesmen listed in the table. +select COUNT(distinct salesman_id) AS "Total count" from orders; + + + +-- Activity 8 + +-- Write an SQL statement to find the highest purchase amount ordered by the each customer with their ID and highest purchase amount. +SELECT customer_id, MAX(purchase_amount) AS "Max Amount" FROM orders GROUP BY customer_id; + +-- Write an SQL statement to find the highest purchase amount on '2012-08-17' for each salesman with their ID. +SELECT salesman_id, order_date, MAX(purchase_amount) AS "Max Amount" FROM orders +WHERE order_date=To_DATE('2012/08/17', 'YYYY/MM/DD') GROUP BY salesman_id, order_date; + +-- Write an SQL statement to find the highest purchase amount with their ID and order date, for only those customers who have a higher purchase amount within the list 2030, 3450, 5760, and 6000. +SELECT customer_id, order_date, MAX(purchase_amount) AS "Max Amount" FROM orders +GROUP BY customer_id, order_date +HAVING MAX(purchase_amount) IN(2030, 3450, 5760, 6000); + From c1a0d0e69a7bb1c6867c69cc89d775882f6f54d9 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 6 Mar 2025 11:05:19 +0530 Subject: [PATCH 04/51] Add files via upload --- SQL/Activities/SQL_Activities_9-11.sql | 80 ++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 SQL/Activities/SQL_Activities_9-11.sql diff --git a/SQL/Activities/SQL_Activities_9-11.sql b/SQL/Activities/SQL_Activities_9-11.sql new file mode 100644 index 0000000000..0bfe985e8c --- /dev/null +++ b/SQL/Activities/SQL_Activities_9-11.sql @@ -0,0 +1,80 @@ + -- Activity 9 + + create table customers ( + customer_id int primary key, customer_name varchar(32), + city varchar(20), grade int, salesman_id int); + +-- Insert values into it +INSERT ALL + INTO customers VALUES (3002, 'Nick Rimando', 'New York', 100, 5001) + INTO customers VALUES (3007, 'Brad Davis', 'New York', 200, 5001) + INTO customers VALUES (3005, 'Graham Zusi', 'California', 200, 5002) + INTO customers VALUES (3008, 'Julian Green', 'London', 300, 5002) + INTO customers VALUES (3004, 'Fabian Johnson', 'Paris', 300, 5006) + INTO customers VALUES (3009, 'Geoff Cameron', 'Berlin', 100, 5003) + INTO customers VALUES (3003, 'Jozy Altidor', 'Moscow', 200, 5007) + INTO customers VALUES (3001, 'Brad Guzan', 'London', 300, 5005) +SELECT 1 FROM DUAL; + + +-- Write an SQL statement to know which salesman are working for which customer. +SELECT a.customer_name AS "Customer Name", a.city, b.salesman_name AS "Salesman", b.commission FROM customers a +INNER JOIN salesman b ON a.salesman_id=b.salesman_id; + +-- Write an SQL statement to make a list of customers in ascending order with a salesman that have a grade less than 300 +SELECT a.customer_name, a.city, a.grade, b.salesman_name AS "Salesman", b.salesman_city FROM customers a +LEFT OUTER JOIN salesman b ON a.salesman_id=b.salesman_id WHERE a.grade<300 +ORDER BY a.customer_id; + + +-- Write an SQL statement to find the list of customers who appointed a salesman for their jobs who gets a commission of more than 12% +SELECT a.customer_name AS "Customer Name", a.city, b.salesman_name AS "Salesman", b.commission FROM customers a +INNER JOIN salesman b ON a.salesman_id=b.salesman_id +WHERE b.commission>12; + +-- Write an SQL statement to find the following details of an order - order number, order date, purchase amount of order, which customer gives the order and which salesman works for that customer and commission rate they get for the order. +SELECT a.order_no, a.order_date, a.purchase_amount, b.customer_name AS "Customer Name", b.grade, c.salesman_name AS "Salesman", c.commission FROM orders a +INNER JOIN customers b ON a.customer_id=b.customer_id +INNER JOIN salesman c ON a.salesman_id=c.salesman_id; + + + +--- Activity 10 + +-- Write a query to find all the orders issued against the salesman who may works for customer whose id is 3007. +SELECT * FROM orders +WHERE salesman_id=(SELECT DISTINCT salesman_id FROM orders WHERE customer_id=3007); + +-- Write a query to find all orders attributed to a salesman in New York. +SELECT * FROM orders +WHERE salesman_id IN (SELECT salesman_id FROM salesman WHERE salesman_city='New York'); + +-- Write a query to count the customers with grades above New York's average. +SELECT grade, COUNT(*) FROM customers +GROUP BY grade HAVING grade>(SELECT AVG(grade) FROM customers WHERE city='New York'); + +-- Write a query to extract the data from the orders table for those salesman who earned the maximum commission +SELECT order_no, purchase_amount, order_date, salesman_id FROM orders +WHERE salesman_id IN( SELECT salesman_id FROM salesman +WHERE commission=( SELECT MAX(commission) FROM salesman)); + + + +-- Activity 11 + +-- Write a query that produces the name and number of each salesman and each customer with more than one current order. Put the results in alphabetical order +SELECT customer_id, customer_name FROM customers a +WHERE 1<(SELECT COUNT(*) FROM orders b WHERE a.customer_id = b.customer_id) +UNION +SELECT salesman_id, salesman_name FROM salesman a +WHERE 1<(SELECT COUNT(*) FROM orders b WHERE a.salesman_id = b.salesman_id) +ORDER BY customer_name; +-- Write a query to make a report of which salesman produce the largest and smallest orders on each date. +SELECT a.salesman_id, a.salesman_name, o.order_no, 'highest on', o.order_date, o.purchase_amount FROM salesman a, orders o +WHERE a.salesman_id=o.salesman_id +AND o.purchase_amount=(SELECT MAX(purchase_amount) FROM orders c WHERE c.order_date = o.order_date) +UNION +SELECT a.salesman_id, a.salesman_name, o.order_no, 'lowest on', o.order_date, o.purchase_amount FROM salesman a, orders o +WHERE a.salesman_id=o.salesman_id +AND o.purchase_amount=(SELECT MIN(purchase_amount) FROM orders c WHERE c.order_date = o.order_date) +ORDER BY order_date; \ No newline at end of file From 28647db1c33fc5667aabb71e2bb95ef74aac6c91 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 6 Mar 2025 16:45:42 +0530 Subject: [PATCH 05/51] Add files via upload --- Python/Activities/Activity3_4.py | 46 ++++++++++++++++++++++++++++++++ Python/Activities/Activity5.py | 5 ++++ Python/Activities/Activity6.py | 2 ++ Python/Activities/Activity7.py | 9 +++++++ Python/Activities/Activity8.py | 14 ++++++++++ Python/Activities/activity1.py | 7 +++++ 6 files changed, 83 insertions(+) create mode 100644 Python/Activities/Activity3_4.py create mode 100644 Python/Activities/Activity5.py create mode 100644 Python/Activities/Activity6.py create mode 100644 Python/Activities/Activity7.py create mode 100644 Python/Activities/Activity8.py create mode 100644 Python/Activities/activity1.py diff --git a/Python/Activities/Activity3_4.py b/Python/Activities/Activity3_4.py new file mode 100644 index 0000000000..30e8db4d5a --- /dev/null +++ b/Python/Activities/Activity3_4.py @@ -0,0 +1,46 @@ + +user1 = input("What is Player 1's name? ") +user2 = input("What is Player 2's name? ") + +# While looping endlessly +while True: + # Ask User1's choice + user1_answer = input(user1 + ", do you want to choose rock, paper or scissors? ").lower() + + # Ask User2's choice + user2_answer = input(user2 + ", do you want to choose rock, paper or scissors? ").lower() + + # Run the algorithm to see who wins + if user1_answer == user2_answer: + print("It's a tie!") + elif user1_answer == 'rock': + if user2_answer == 'scissors': + print("Rock wins!") + else: + print("Paper wins!") + elif user1_answer == 'scissors': + if user2_answer == 'paper': + print("Scissors win!") + else: + print("Rock wins!") + elif user1_answer == 'paper': + if user2_answer == 'rock': + print("Paper wins!") + else: + print("Scissors win!") + else: + print("Invalid input! You have not entered rock, paper or scissors, try again.") + + # Ask them if they want to play again + repeat = input("Do you want to play another round? Yes/No: ").lower() + + # If they say yes, don't do anything + if(repeat == "yes"): + pass + # If they say no, exit the game + elif(repeat == "no"): + raise SystemExit + # If they say anything else, exit with an error message. + else: + print("You entered an invalid option. Exiting now.") + raise SystemExit \ No newline at end of file diff --git a/Python/Activities/Activity5.py b/Python/Activities/Activity5.py new file mode 100644 index 0000000000..e038386eac --- /dev/null +++ b/Python/Activities/Activity5.py @@ -0,0 +1,5 @@ +number = int(input("Input a number: ")) + +# use for loop to iterate 10 times +for i in range(1,11): + print(number, ' x ', i, ' = ', number*i) diff --git a/Python/Activities/Activity6.py b/Python/Activities/Activity6.py new file mode 100644 index 0000000000..b08461fbdb --- /dev/null +++ b/Python/Activities/Activity6.py @@ -0,0 +1,2 @@ +for i in range(10): + print(str(i) * i) \ No newline at end of file diff --git a/Python/Activities/Activity7.py b/Python/Activities/Activity7.py new file mode 100644 index 0000000000..890908cf91 --- /dev/null +++ b/Python/Activities/Activity7.py @@ -0,0 +1,9 @@ +num_list = list(input("Enter List of numbers : ").split(",")) + +#num_list = [1,6,4,2,9] +sum = 0 + +for x in num_list: + sum=sum+int(x) + +print(sum) \ No newline at end of file diff --git a/Python/Activities/Activity8.py b/Python/Activities/Activity8.py new file mode 100644 index 0000000000..bf40239f56 --- /dev/null +++ b/Python/Activities/Activity8.py @@ -0,0 +1,14 @@ +# Given list of numbers +numList = [10, 20, 30, 40, 10] +print("Given list is ", numList) + +# Get first element in list +firstElement = numList[0] +# Get last element in list +lastElement = numList[-1] + +# Check if first and last element are equal +if (firstElement == lastElement): + print(True) +else: + print(False) \ No newline at end of file diff --git a/Python/Activities/activity1.py b/Python/Activities/activity1.py new file mode 100644 index 0000000000..68944126b5 --- /dev/null +++ b/Python/Activities/activity1.py @@ -0,0 +1,7 @@ +name = input("Enter your name : ") +age = int(input ("Enter your age : ")) + +year = (2025-age)+100 + + +print ("{} will turn 100 in the year {}".format(name,year)) \ No newline at end of file From cf2da445bc3ec96b61fb25fe2aff644a8979835f Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Fri, 7 Mar 2025 12:51:58 +0530 Subject: [PATCH 06/51] Add files via upload --- Python/Activities/Activity10.py | 7 +++++ Python/Activities/Activity11.py | 14 ++++++++++ Python/Activities/Activity12.py | 14 ++++++++++ Python/Activities/Activity13.py | 15 +++++++++++ Python/Activities/Activity14.py | 15 +++++++++++ Python/Activities/Activity15.py | 4 +++ Python/Activities/Activity16.py | 23 ++++++++++++++++ Python/Activities/Activity17_18.py | 36 +++++++++++++++++++++++++ Python/Activities/Activity19_20.py | 42 ++++++++++++++++++++++++++++++ Python/Activities/Activity9.py | 25 ++++++++++++++++++ Python/Activities/Activiy2.py | 7 +++++ Python/Activities/Pandas.py | 18 +++++++++++++ Python/Activities/PandasExample.py | 15 +++++++++++ 13 files changed, 235 insertions(+) create mode 100644 Python/Activities/Activity10.py create mode 100644 Python/Activities/Activity11.py create mode 100644 Python/Activities/Activity12.py create mode 100644 Python/Activities/Activity13.py create mode 100644 Python/Activities/Activity14.py create mode 100644 Python/Activities/Activity15.py create mode 100644 Python/Activities/Activity16.py create mode 100644 Python/Activities/Activity17_18.py create mode 100644 Python/Activities/Activity19_20.py create mode 100644 Python/Activities/Activity9.py create mode 100644 Python/Activities/Activiy2.py create mode 100644 Python/Activities/Pandas.py create mode 100644 Python/Activities/PandasExample.py diff --git a/Python/Activities/Activity10.py b/Python/Activities/Activity10.py new file mode 100644 index 0000000000..01d7514d4e --- /dev/null +++ b/Python/Activities/Activity10.py @@ -0,0 +1,7 @@ + +num_tuple = (1, 5, 10, 81, 90) + +print("Elements that are divisible by 5:") +for num in num_tuple: + if (num % 5 == 0): + print(num) \ No newline at end of file diff --git a/Python/Activities/Activity11.py b/Python/Activities/Activity11.py new file mode 100644 index 0000000000..f6b3eabb0f --- /dev/null +++ b/Python/Activities/Activity11.py @@ -0,0 +1,14 @@ + +fruit_shop = { + "apple": 10, + "banana": 15, + "orange": 8, + "peaches": 15 +} + +key_to_check = input("What are you looking for? ").lower() + +if(key_to_check in fruit_shop): + print("Yes, this is available") +else: + print("No, this is not available") \ No newline at end of file diff --git a/Python/Activities/Activity12.py b/Python/Activities/Activity12.py new file mode 100644 index 0000000000..41777aa9e8 --- /dev/null +++ b/Python/Activities/Activity12.py @@ -0,0 +1,14 @@ + +# Define function to calculate sum +def calculateSum(num): + if num: + # Recursive function call + return num + calculateSum(num-1) + else: + return 0 + +# Call calculateSum() function +res = calculateSum(10) + +# Print result +print(res) \ No newline at end of file diff --git a/Python/Activities/Activity13.py b/Python/Activities/Activity13.py new file mode 100644 index 0000000000..944a933858 --- /dev/null +++ b/Python/Activities/Activity13.py @@ -0,0 +1,15 @@ +# Custom function to calculate sum +def calculate_sum(numbers): + sum = 0 + for number in numbers: + sum += number + return sum + +# Define the list of numbers +numList = [10, 40, 60, 90] + +# Call the sum() function with numList as argument +result = calculate_sum(numList) + +# Print result with message +print("The sum of all the elements is: " + str(result)) diff --git a/Python/Activities/Activity14.py b/Python/Activities/Activity14.py new file mode 100644 index 0000000000..4a3d550f09 --- /dev/null +++ b/Python/Activities/Activity14.py @@ -0,0 +1,15 @@ + +def fibonacci(number): + if number <= 1: + return number + else: + return(fibonacci(number-1) + fibonacci(number-2)) + +nterms = int(input("Enter a number: ")) + +if nterms <= 0: + print("Please enter a positive number") +else: + print("Fibonacci Sequence: ") + for i in range(nterms): + print(fibonacci(i)) \ No newline at end of file diff --git a/Python/Activities/Activity15.py b/Python/Activities/Activity15.py new file mode 100644 index 0000000000..248db5aa0d --- /dev/null +++ b/Python/Activities/Activity15.py @@ -0,0 +1,4 @@ +try: + print(x) +except NameError: + print("x hasn't been defined yet.") diff --git a/Python/Activities/Activity16.py b/Python/Activities/Activity16.py new file mode 100644 index 0000000000..a778661967 --- /dev/null +++ b/Python/Activities/Activity16.py @@ -0,0 +1,23 @@ + +class Car: + 'This class represents a car' + + def __init__(self, manufacturer, model, make, transmission, color): + self.manufacturer = manufacturer + self.model = model + self.make = make + self.transmission = transmission + self.color = color + + def accelerate(self): + print(self.manufacturer + " " + self.model + " has started moving") + + def stop(self): + print(self.manufacturer + " " + self.model + " has stopped moving") + +car1 = Car("Toyota", "Corolla", "2015", "Manual", "White") +car2 = Car("Maruti", "800", "2013", "Manual", "Red") +car3 = Car("Suzuki", "Swift", "2017", "Automatic", "Black") + +car1.accelerate() +car1.stop() \ No newline at end of file diff --git a/Python/Activities/Activity17_18.py b/Python/Activities/Activity17_18.py new file mode 100644 index 0000000000..f2270ebb12 --- /dev/null +++ b/Python/Activities/Activity17_18.py @@ -0,0 +1,36 @@ + +import pandas + +# create the data set +data = { + "Usernames": ["admin", "Charles", "Deku"], + "Passwords": ["password", "Charl13", "AllMight"] +} + +# convert data set into data frame +dataframe = pandas.DataFrame(data) + +# Print the DataFrame +print(dataframe) + +# writing the data frame into a csv file +dataframe.to_csv("sample.csv", index=False) + + +# read data from csv file +input_data = pandas.read_csv("sample.csv") + +# print the values in the user name + +username_col = input_data["Usernames"] +print(username_col) + +#print username and password of the second row + +# print username and password of second row +print(username_col[1]) +print(input_data["Passwords"]) + + +#sorting usernames +print(input_data.sort_values("Usernames",ascending=False)) \ No newline at end of file diff --git a/Python/Activities/Activity19_20.py b/Python/Activities/Activity19_20.py new file mode 100644 index 0000000000..6a2ff128ca --- /dev/null +++ b/Python/Activities/Activity19_20.py @@ -0,0 +1,42 @@ +# Import pandas +import pandas +from pandas import ExcelWriter + +# data set +data = { + 'FirstName':["Satvik", "Avinash", "Lahri"], + 'LastName':["Shah", "Kati", "Rath"], + 'Email':["satshah@example.com", "avinashK@example.com", "lahri.rath@example.com"], + 'PhoneNumber':["4537829158", "4892184058", "4528727830"] +} + +# convert into dataset +dataframe = pandas.DataFrame(data) + +# Print the dataframe +print(dataframe) + +# Writing the dataframe to a Excel file +writer = ExcelWriter('sample.xlsx') +dataframe.to_excel(writer, 'Sheet1', index = False) + +# closing the writer +writer.close() + +# Read the excel file +input_date = pandas.read_excel("sample.xlsx") + + +#print number of rows and columns +print(input_date.shape) + +print("Number of rows " , input_date.shape[0]) +print("Number of columns " , input_date.shape[1]) + +#print data in email columns only + +print(input_date["Email"]) + +#Sort the data + +print(input_date.sort_values("FirstName")) \ No newline at end of file diff --git a/Python/Activities/Activity9.py b/Python/Activities/Activity9.py new file mode 100644 index 0000000000..500e677192 --- /dev/null +++ b/Python/Activities/Activity9.py @@ -0,0 +1,25 @@ + +# Given lists +listOne = [10, 20, 23, 11, 17] +listTwo = [13, 43, 24, 36, 12] + +# Print the lists +print("First List ", listOne) +print("Second List ", listTwo) + +# Declare a third list that will contain the result +thirdList = [] + +# Iterate through first list to get odd elements +for num in listOne: + if (num % 2 != 0): + thirdList.append(num) + +# Iterate through first list to get even elements +for num in listTwo: + if (num % 2 == 0): + thirdList.append(num) + +# Print result +print("result List is:") +print(thirdList) \ No newline at end of file diff --git a/Python/Activities/Activiy2.py b/Python/Activities/Activiy2.py new file mode 100644 index 0000000000..291eb81c73 --- /dev/null +++ b/Python/Activities/Activiy2.py @@ -0,0 +1,7 @@ +num = int(input("Enter a number : ")) + +if(num%2==0): + print("Number is even" ) +else: + print ("Number is odd") + \ No newline at end of file diff --git a/Python/Activities/Pandas.py b/Python/Activities/Pandas.py new file mode 100644 index 0000000000..184336b5ee --- /dev/null +++ b/Python/Activities/Pandas.py @@ -0,0 +1,18 @@ +# import pandas +import pandas as pd + +# Create a dictionary to hold our data +data = { + "X": [1, 2, 3, 4, 5], + "Y": [9, 8, 7, 6, 5], + "Z": [10, 12, 8, 4, 3] +} + +# Create a new DataFrame using our dictionary +table = pd.DataFrame(data) + +# Print the DataFrame +print(table) + +print(table["Z"][1]) +print(table["Z"]) \ No newline at end of file diff --git a/Python/Activities/PandasExample.py b/Python/Activities/PandasExample.py new file mode 100644 index 0000000000..2aceb3aaa9 --- /dev/null +++ b/Python/Activities/PandasExample.py @@ -0,0 +1,15 @@ +import pandas + +data = { + "Vehicle Type": ["Car", "Car", "Bike"], + "Manufacturer": ["Maruti", "Toyota", "Royal Enfield"], + "Model" : ["Swift", "Corolla", "Thunderbird"] +} + +dataframe = pandas.DataFrame(data) + +# Print the DataFrame +print(dataframe) + + +dataframe.to_csv("Vehicle.csv", index=False) \ No newline at end of file From 560c3e5238b25429a9afa821fe10c4cb2d65114e Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:12:14 +0530 Subject: [PATCH 07/51] Add files via upload --- Selenium/Project/Activity1.java | 38 ++++++++++ Selenium/Project/Activity2.java | 41 +++++++++++ Selenium/Project/Activity3.java | 66 +++++++++++++++++ Selenium/Project/Activity4.java | 109 ++++++++++++++++++++++++++++ Selenium/Project/Activity5.java | 87 ++++++++++++++++++++++ Selenium/Project/Activity6.java | 71 ++++++++++++++++++ Selenium/Project/Activity7.java | 124 ++++++++++++++++++++++++++++++++ Selenium/Project/Activity8.java | 70 ++++++++++++++++++ Selenium/Project/Activity9.java | 86 ++++++++++++++++++++++ Selenium/Project/pom.xml | 41 +++++++++++ 10 files changed, 733 insertions(+) create mode 100644 Selenium/Project/Activity1.java create mode 100644 Selenium/Project/Activity2.java create mode 100644 Selenium/Project/Activity3.java create mode 100644 Selenium/Project/Activity4.java create mode 100644 Selenium/Project/Activity5.java create mode 100644 Selenium/Project/Activity6.java create mode 100644 Selenium/Project/Activity7.java create mode 100644 Selenium/Project/Activity8.java create mode 100644 Selenium/Project/Activity9.java create mode 100644 Selenium/Project/pom.xml diff --git a/Selenium/Project/Activity1.java b/Selenium/Project/Activity1.java new file mode 100644 index 0000000000..ea8383884c --- /dev/null +++ b/Selenium/Project/Activity1.java @@ -0,0 +1,38 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import static org.testng.Assert.assertEquals; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.annotations.AfterClass; + +public class Activity1 { + + //declare the class objects + WebDriver driver; + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + System.out.println(driver.getTitle()); + } + + @Test(priority = 1) + public void pageTitleTest() + { + assertEquals(driver.getTitle(),"OrangeHRM"); + } + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} diff --git a/Selenium/Project/Activity2.java b/Selenium/Project/Activity2.java new file mode 100644 index 0000000000..874ec7a8f5 --- /dev/null +++ b/Selenium/Project/Activity2.java @@ -0,0 +1,41 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import static org.testng.Assert.assertEquals; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.annotations.AfterClass; + +public class Activity2 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void urlHeaderImage() + { + WebElement headerImage = driver.findElement(By.xpath("//*[@id=\"divLogo\"]/img")); + System.out.println(headerImage.getAttribute("src")); + } + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} diff --git a/Selenium/Project/Activity3.java b/Selenium/Project/Activity3.java new file mode 100644 index 0000000000..47fb75d836 --- /dev/null +++ b/Selenium/Project/Activity3.java @@ -0,0 +1,66 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import static org.testng.Assert.assertEquals; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.Assert; +import org.testng.annotations.AfterClass; + +public class Activity3 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + @Test(priority = 2) + public void verifyHomepage() + { + + WebElement welcome = driver.findElement(By.id("welcome")); + Boolean msg = welcome.isDisplayed(); + if(msg.equals("welcome")) + { + System.out.println("Home page is opened"); + } + else + { + System.out.println("Login is failed"); + } + } + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} diff --git a/Selenium/Project/Activity4.java b/Selenium/Project/Activity4.java new file mode 100644 index 0000000000..939faa2b86 --- /dev/null +++ b/Selenium/Project/Activity4.java @@ -0,0 +1,109 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import static org.testng.Assert.assertEquals; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.Assert; +import org.testng.annotations.AfterClass; + +public class Activity4 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + @Test(priority = 2) + + public void addEmployee() + { + WebElement PIM = driver.findElement(By.xpath("//*[@id=\"menu_pim_viewPimModule\"]/b")); + PIM.click(); + + WebElement employeeList = driver.findElement(By.id("menu_pim_viewEmployeeList")); + employeeList.click(); + + WebElement addEmployee = driver.findElement(By.id("btnAdd")); + addEmployee.click(); + + WebElement firstName = driver.findElement(By.id("firstName")); + firstName.sendKeys("Malli"); + + WebElement lastName = driver.findElement(By.id("lastName")); + lastName.sendKeys("Gownivari"); + + driver.findElement(By.id("btnSave")).click(); + } + + + @Test (priority = 3) + public void verifyEmployeeDetails() throws InterruptedException { + + + WebElement PIM = driver.findElement(By.xpath("//*[@id=\"menu_pim_viewPimModule\"]/b")); + PIM.click(); + + WebElement employeeList = driver.findElement(By.id("menu_pim_viewEmployeeList")); + employeeList.click(); + + WebElement employeName = driver.findElement(By.id("empsearch_employee_name_empName")); + employeName.clear(); + + Thread.sleep(10000); + employeName.sendKeys("Malli Gownivari"); + + Thread.sleep(10000); + WebElement selectEmployee = driver.findElement(By.xpath("/html/body/div[4]/ul/li")); + selectEmployee.click(); + + + + WebElement employeeSelected = driver.findElement(By.xpath("empsearch_employee_name_empName")); + String emp = employeeSelected.getText(); + + if(emp.equals("Malli Gownivari")) + { + System.out.println("Employee details added successfully"); + } + else { + System.out.println("Employee details not added"); + } + + } + + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} diff --git a/Selenium/Project/Activity5.java b/Selenium/Project/Activity5.java new file mode 100644 index 0000000000..1bc95744fa --- /dev/null +++ b/Selenium/Project/Activity5.java @@ -0,0 +1,87 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.Select; +import org.testng.annotations.AfterClass; + +public class Activity5 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + @Test(priority = 2) + public void editMyInfo() throws InterruptedException + { + WebElement myInfo_Link = driver.findElement(By.id("menu_pim_viewMyDetails")); + + myInfo_Link.click(); + + //Edit button xpath is not workings + WebElement edit = driver.findElement(By.xpath("//*[@id=\"btnSave\"]")); + edit.click(); + + + WebElement firstName = driver.findElement(By.id("personal_txtEmpFirstName")); + firstName.clear(); + firstName.sendKeys("Malli"); + + + WebElement lastName = driver.findElement(By.id("personal_txtEmpFirstName")); + lastName.clear(); + lastName.sendKeys("Gownivari"); + + + WebElement gender = driver.findElement(By.id("personal_optGender_1")); + gender.click(); + + + WebElement nationality = driver.findElement(By.id("personal_cmbNation")); + Select countries = new Select(nationality); + countries.selectByVisibleText("American"); + + + WebElement saveButton = driver.findElement(By.id("btnSave")); + saveButton.click(); + + } + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} + + + diff --git a/Selenium/Project/Activity6.java b/Selenium/Project/Activity6.java new file mode 100644 index 0000000000..0daeecda4e --- /dev/null +++ b/Selenium/Project/Activity6.java @@ -0,0 +1,71 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.Select; +import org.testng.Assert; +import org.testng.annotations.AfterClass; + +public class Activity6 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + @Test + public void verifyDirectoryMenu() + { + + WebElement dashboard = driver.findElement(By.xpath("//*[@id=\"menu_dashboard_index\"]/b")); + System.out.println("Dashboard is displayed : " + dashboard.isDisplayed()); + + dashboard.click(); + + String title = driver.getTitle(); + + Assert.assertEquals(title, "Search Directory"); + System.out.println("Title is same as " + title); + + + + } + + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} + + + diff --git a/Selenium/Project/Activity7.java b/Selenium/Project/Activity7.java new file mode 100644 index 0000000000..1673fd097f --- /dev/null +++ b/Selenium/Project/Activity7.java @@ -0,0 +1,124 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; +import org.apache.poi.ss.formula.functions.Today; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.Select; +import org.testng.Assert; +import org.testng.annotations.AfterClass; + +public class Activity7 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + + @Test(priority = 2) + public void myInfo() + { + WebElement myInfo = driver.findElement(By.id("menu_pim_viewMyDetails")); + myInfo.click(); + + } + + @Test(priority = 3) + public void addQualification() + { + + WebElement qualification = driver.findElement(By.xpath("//*[@id=\"sidenav\"]/li[9]/a")); + qualification.click(); + + WebElement addWorkExp = driver.findElement(By.id("addWorkExperience")); + addWorkExp.click(); + + + WebElement company = driver.findElement(By.id("experience_employer")); + company.sendKeys("IBM"); + + WebElement jobTitle = driver.findElement(By.id("experience_jobtitle")); + jobTitle.sendKeys("Tester"); + + + + + WebElement fromDate = driver.findElement(By.id("experience_from_date")); + fromDate.clear(); + fromDate.click(); + + WebElement from_month = driver.findElement(By.xpath("//*[@id=\"frmWorkExperience\"]/fieldset/ol/li[3]/img")); + Select from_monthCombo = new Select(from_month); + from_monthCombo.selectByVisibleText("Mar"); + + WebElement from_year = driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/div/div/select[2]")); + Select from_yearCombo = new Select(from_year); + from_yearCombo.selectByVisibleText("2015"); + + driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/table/tbody/tr[4]/td[3]/a")).click(); + + + + + WebElement toDate = driver.findElement(By.id("experience_from_date")); + toDate.clear(); + toDate.click(); + + WebElement to_month = driver.findElement(By.xpath("//*[@id=\"frmWorkExperience\"]/fieldset/ol/li[3]/img")); + Select to_monthCombo = new Select(to_month); + to_monthCombo.selectByVisibleText("Mar"); + + WebElement to_year = driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/div/div/select[2]")); + Select to_yearCombo = new Select(to_year); + to_yearCombo.selectByVisibleText("2020"); + + driver.findElement(By.xpath("//*[@id=\"ui-datepicker-div\"]/table/tbody/tr[4]/td[3]/a")).click(); + + + + WebElement addComment = driver.findElement(By.id("experience_comments")); + addComment.sendKeys("added the experience"); + + + WebElement saveBtn = driver.findElement(By.id("btnWorkExpSave")); + saveBtn.click(); + +} + + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} + + + diff --git a/Selenium/Project/Activity8.java b/Selenium/Project/Activity8.java new file mode 100644 index 0000000000..f0c69fb90d --- /dev/null +++ b/Selenium/Project/Activity8.java @@ -0,0 +1,70 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.Select; +import org.testng.Assert; +import org.testng.annotations.AfterClass; + +public class Activity8 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + public void leaveApply() + { + WebElement dashboard = driver.findElement(By.id("menu_dashboard_index")); + dashboard.click(); + + WebElement LeaveLink = driver.findElement(By.xpath("//*[@id=\"dashboard-quick-launch-panel-menu_holder\"]/table/tbody/tr/td[4]/div/a/img")); + LeaveLink.click(); + + WebElement applyLeave = driver.findElement(By.xpath("menu_leave_applyLeave")); + applyLeave.click(); + + //I'm getting No leave Types with leave balances + + // So Unable to do apply for leave + + + } + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} + + + diff --git a/Selenium/Project/Activity9.java b/Selenium/Project/Activity9.java new file mode 100644 index 0000000000..6a5498036e --- /dev/null +++ b/Selenium/Project/Activity9.java @@ -0,0 +1,86 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import java.util.List; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.Select; +import org.testng.Assert; +import org.testng.annotations.AfterClass; + +public class Activity9 { + + //declare the class objects + WebDriver driver; + + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("http://alchemy.hguy.co/orangehrm"); + + } + + @Test(priority = 1) + public void login() + { + WebElement userName = driver.findElement(By.id("txtUsername")); + WebElement password = driver.findElement(By.id("txtPassword")); + WebElement loginButton = driver.findElement(By.id("btnLogin")); + + userName.sendKeys("orange"); + password.sendKeys("orangepassword123"); + loginButton.click(); + + System.out.println(driver.getTitle()); + + } + + @Test(priority = 2) + public void myInfo() + { + WebElement myInfo = driver.findElement(By.id("menu_pim_viewMyDetails")); + myInfo.click(); + + } + + + @Test(priority = 3) + public void emergencyContact() + { + WebElement emergency_contact = driver.findElement(By.xpath("/html/body/div[1]/div[3]/div/div[1]/ul/li[3]/a")); + emergency_contact.click(); + + List allRows = driver.findElements(By.xpath("//table[@class='emgcontact_list']//tr")); + + + for (WebElement row : allRows) { + List cells = row.findElements(By.tagName("td")); + + + for (WebElement cell : cells) { + + System.out.println(cell.getText()); + + } + + } + + } + + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} + + + diff --git a/Selenium/Project/pom.xml b/Selenium/Project/pom.xml new file mode 100644 index 0000000000..2f0b48d17c --- /dev/null +++ b/Selenium/Project/pom.xml @@ -0,0 +1,41 @@ + + 4.0.0 + com.ibm + FST_TestNG + 0.0.1-SNAPSHOT + + + + + org.seleniumhq.selenium + selenium-java + 4.27.0 + + + + org.testng + testng + 7.10.2 + test + + + + org.apache.poi + poi + 5.3.0 + + + + org.apache.poi + poi-ooxml + 5.3.0 + + + + com.opencsv + opencsv + 5.9 + + + + \ No newline at end of file From 442f8243f50156bb0c3582fd3a52f880805fc122 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:20:50 +0530 Subject: [PATCH 08/51] Add files via upload --- .../Git-Hub-Project-readyapi-project_REST.xml | 305 +++++++++++ API/Activities/PetStoreREST.xml | 482 ++++++++++++++++++ API/Activities/Project-1-readyapi-project.xml | 321 ++++++++++++ API/Activities/Project-2-readyapi-project.xml | 45 ++ .../REST-Project-2-readyapi-project.xml | 231 +++++++++ 5 files changed, 1384 insertions(+) create mode 100644 API/Activities/Git-Hub-Project-readyapi-project_REST.xml create mode 100644 API/Activities/PetStoreREST.xml create mode 100644 API/Activities/Project-1-readyapi-project.xml create mode 100644 API/Activities/Project-2-readyapi-project.xml create mode 100644 API/Activities/REST-Project-2-readyapi-project.xml diff --git a/API/Activities/Git-Hub-Project-readyapi-project_REST.xml b/API/Activities/Git-Hub-Project-readyapi-project_REST.xml new file mode 100644 index 0000000000..fabe982f2c --- /dev/null +++ b/API/Activities/Git-Hub-Project-readyapi-project_REST.xml @@ -0,0 +1,305 @@ + + + + + + + + https://api.github.com + + + + + + + + + application/json; charset=utf-8 + 404 + + keys:Fault + + + application/json + + + + application/json; charset=utf-8 + 201 + + keys:Response + + + + https://api.github.com + + + + + + + + + + + + keyId + keyId + TEMPLATE + keyId + + + + + + application/json; charset=utf-8 + 200 + + ns:Response + + + + https://api.github.com + + + + + keyId + + + + + + + + keyId + keyId + TEMPLATE + keyId + + + + + + application/json + + + + + 204 + + data + + + + https://api.github.com + + + + + keyId + + + + + + + + SEQUENTIAL + + + true + true + false + true + true + + + + + + + <xml-fragment/> + + https://api.github.com + { + "title": "TestKey", + "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQCePm79U4yDVOTfqRX/kjciBddWX4vOOTBb0TOwP+d1nUmzjrRBd2SpN/sOtjg+8AMUU/Lase+uCSg5q1eEUGStoMquIVrFXTXbL41BJiJhRc64l8ZzG0Ip61/72PLGmxMPqLgmLo2gBBBY5O6huPpDGn3Sy/WFluwK6HUSL6R39Q==" + } + https://api.github.com/user/keys + + + + 201 + + + + GitHubProject + No Authorization + + + + + + + + + + + transfer_id + Response + Post Request + $['id'] + keyId + Get Request + + JSONPATH + true + + + del_id + Response + Post Request + $['id'] + keyId + Delete Request + JSONPATH + true + + + + + + + + + <xml-fragment/> + + https://api.github.com + + https://api.github.com/user/keys/118866679 + + + + 200 + + + + GitHubProject + No Authorization + + + + + + + keyId + + + + + + + + + + <xml-fragment/> + + https://api.github.com + + https://api.github.com/user/keys/118866679 + + + + 204 + + + + GitHubProject + No Authorization + + + + + + + keyId + + + + + + + + + + + + + + + + + + GitHubProject + OAuth 2.0 + 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 + HEADER + ENTERED_MANUALLY + ENTERED_MANUALLY + AUTHORIZATION_CODE_GRANT + AUTOMATIC + + id_token + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + GitHubProject + OAuth 2.0 + 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 + HEADER + ENTERED_MANUALLY + ENTERED_MANUALLY + AUTHORIZATION_CODE_GRANT + AUTOMATIC + + id_token + + + + diff --git a/API/Activities/PetStoreREST.xml b/API/Activities/PetStoreREST.xml new file mode 100644 index 0000000000..3c472c5568 --- /dev/null +++ b/API/Activities/PetStoreREST.xml @@ -0,0 +1,482 @@ + + + + + + + + https://petstore.swagger.io + + + + + + + + + application/json + + + + application/json + 200 + + pet:Response + + + application/json + 400 + + pet:Fault + + + + https://petstore.swagger.io + + No Authorization + No Authorization + + + + + + + + + + + + + status + sold + QUERY + sold + + + + + + application/json + 200 + + Response + + + + https://petstore.swagger.io + + No Authorization + No Authorization + + + + + + status + + + + + + + + + + + + petId + petId + TEMPLATE + petId + + + + + + application/json + 200 + + ns:Response + + + application/json + + + + application/json + 404 + + ns:Fault + + + + 404 + + data + + + + https://petstore.swagger.io + + No Authorization + No Authorization + + + + + + petId + + + + + + + + SEQUENTIAL + + + + + + + + <xml-fragment/> + + https://petstore.swagger.io + { + "id": 22935, + "name": "John", + "status": "alive" +} + https://petstore.swagger.io/v2/pet + + + + 200 + + + + + $['status'] + alive + false + false + false + + + + No Authorization + No Authorization + + + + + + + + + + + petStatus + Response + Post Request + $['status'] + status + Get Request + JSONPATH + true + + + petID + Response + Post Request + $['id'] + + petId + Delete Request + + JSONPATH + true + + + + + + + + + <xml-fragment/> + + https://petstore.swagger.io + + https://petstore.swagger.io/v2/pet/findByStatus + + + + 200 + + + + No Authorization + No Authorization + + + + + + + status + + + + + + + + + + <xml-fragment/> + + https://petstore.swagger.io + + https://petstore.swagger.io/v2/pet/22935 + + + + 200 + + + + No Authorization + No Authorization + + + + + + + petId + + + + + + + + + + + + <xml-fragment/> + + + + + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + FST_DBConnection( Default environment ) + SELECT * FROM petData; + + false + + + true + true + petID + petName + petStatus + true + false + + + + + + + + <xml-fragment/> + + https://petstore.swagger.io + { + "id": ${DataSource#petID}, + "name": "${DataSource#petName}", + "status": "${DataSource#petStatus}" +} + https://petstore.swagger.io/v2/pet + + + + 200 + + + + + $['status'] + alive + false + false + false + + + + No Authorization + No Authorization + + + + + + + + + + + Status transfer + Response + Post Request + $['status'] + status + Get Request + + JSONPATH + true + + + transferID + Response + Post Request + $['id'] + petId + Delete Request + JSONPATH + true + + + + + + + + + <xml-fragment/> + + https://petstore.swagger.io + + https://petstore.swagger.io/v2/pet/findByStatus + + + + 200 + + + + No Authorization + No Authorization + + + + + + + status + + + + + + + + + + <xml-fragment/> + + https://petstore.swagger.io + + https://petstore.swagger.io/v2/pet/22935 + + + + 200 + + + + No Authorization + No Authorization + + + + + + + petId + + + + + + + + Data Source + Post Request + true + + + + + + + + + + + + + + FST_DBConnection + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + + + + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + diff --git a/API/Activities/Project-1-readyapi-project.xml b/API/Activities/Project-1-readyapi-project.xml new file mode 100644 index 0000000000..c8e0d38013 --- /dev/null +++ b/API/Activities/Project-1-readyapi-project.xml @@ -0,0 +1,321 @@ + + + + + + + + http://www.dneonline.com/calculator.asmx + + + + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + No Authorization + No Authorization + + + + + + + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + No Authorization + No Authorization + + + + + + + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + No Authorization + No Authorization + + + + + + + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + No Authorization + No Authorization + + + + + + + + SEQUENTIAL + + + + + + CalculatorSoap + Add + + + <xml-fragment/> + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + 20\r + 30\r + \r + \r +]]> + + + + + 200 + + + + + + + + + declare namespace ns1='http://tempuri.org/'; +//ns1:AddResult + 50 + false + false + false + + + + No Authorization + No Authorization + + + + + + + + + + + CalculatorSoap + Divide + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + + + + 200 + + + + + + + + No Authorization + No Authorization + + + + + + + + + CalculatorSoap + Multiply + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + + + + 200 + + + + + + + + No Authorization + No Authorization + + + + + + + + + CalculatorSoap + Subtract + + + UTF-8 + http://www.dneonline.com/calculator.asmx + \r + \r + \r + \r + ?\r + ?\r + \r + \r +]]> + + + + + 200 + + + + + + + + No Authorization + No Authorization + + + + + + + + + + + + + + + + FST_DBConnection + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + + + + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + diff --git a/API/Activities/Project-2-readyapi-project.xml b/API/Activities/Project-2-readyapi-project.xml new file mode 100644 index 0000000000..2791984e0b --- /dev/null +++ b/API/Activities/Project-2-readyapi-project.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + diff --git a/API/Activities/REST-Project-2-readyapi-project.xml b/API/Activities/REST-Project-2-readyapi-project.xml new file mode 100644 index 0000000000..3c3cbdf234 --- /dev/null +++ b/API/Activities/REST-Project-2-readyapi-project.xml @@ -0,0 +1,231 @@ + + + + + + + + http://ipwhois.app + + + + + + + + + IP + IP + TEMPLATE + IP + + + + + + application/json; charset=utf-8 + 200 + + ns:Response + + + + http://ipwhois.app + + + + + IP + + + + + + + + SEQUENTIAL + + + + + + + + 10 + 1 + 0 + COMP + IP + 0 + false + IPv4 + + + + false + false + IP + true + false + + + + + + + + <xml-fragment/> + + http://ipwhois.app + + http://ipwhois.app/json/135.72.100.243 + + + + 200 + + + + No Authorization + No Authorization + + + + + + + IP + + + + + + + + + city Transfer + Response + Get Request + $['city'] + city_name + Data Sink + + JSONPATH + true + + + lat Transfer + Response + Get Request + $['latitude'] + latitude + Data Sink + JSONPATH + true + + + long Transfer + Response + Get Request + $['longitude'] + longitude + Data Sink + JSONPATH + true + + + + + + + + + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + FST_DataConnection + INSERT INTO coordinates VALUES (? , ? , ?) + false + + + + + city_name + Carbondale + + + latitude + 37.7272727 + + + longitude + -89.2167501 + + + + + + + + Data Source + Get Request + true + + + + + + + + + + + + + + FST_DataConnection + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + + + + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + From c3f858aff164ed86786bac2da9bf8cb530d9d1ad Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:30:44 +0530 Subject: [PATCH 09/51] Add files via upload --- TestNG/Activities/Activity1.java | 43 +++++++++ TestNG/Activities/Activity10.java | 106 +++++++++++++++++++++++ TestNG/Activities/Activity4_DemoOne.java | 16 ++++ TestNG/Activities/Activity4_DemoTwo.java | 13 +++ TestNG/Activities/Activity5.java | 62 +++++++++++++ TestNG/Activities/Activity7.java | 82 ++++++++++++++++++ 6 files changed, 322 insertions(+) create mode 100644 TestNG/Activities/Activity1.java create mode 100644 TestNG/Activities/Activity10.java create mode 100644 TestNG/Activities/Activity4_DemoOne.java create mode 100644 TestNG/Activities/Activity4_DemoTwo.java create mode 100644 TestNG/Activities/Activity5.java create mode 100644 TestNG/Activities/Activity7.java diff --git a/TestNG/Activities/Activity1.java b/TestNG/Activities/Activity1.java new file mode 100644 index 0000000000..765bb5219c --- /dev/null +++ b/TestNG/Activities/Activity1.java @@ -0,0 +1,43 @@ +package activities; + +import org.testng.annotations.Test; +import org.testng.annotations.BeforeClass; + +import static org.testng.Assert.assertEquals; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.annotations.AfterClass; + +public class Activity1 { + + //declare the class objects + WebDriver driver; + + @BeforeClass + public void setUp() + { + driver = new FirefoxDriver(); + driver.get("https://training-support.net/"); + } + + @Test(priority = 1) + public void pageTitleTest() + { + assertEquals(driver.getTitle(),"Training Support"); + } + + @Test(priority = 2) + public void aboutLinkTest() + { + driver.findElement(By.linkText("About Us")).click(); + assertEquals(driver.getTitle(),"About Training Support"); + } + @AfterClass + public void tearDown() + { + driver.quit(); + } + +} diff --git a/TestNG/Activities/Activity10.java b/TestNG/Activities/Activity10.java new file mode 100644 index 0000000000..be2949f8e9 --- /dev/null +++ b/TestNG/Activities/Activity10.java @@ -0,0 +1,106 @@ +package activities; +import static org.testng.Assert.assertEquals; +import java.io.FileInputStream; +import java.time.Duration; +import java.util.ArrayList; +import java.util.List; +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; + +public class Activity10 { + WebDriver driver; + WebDriverWait wait; + + @BeforeClass + public void beforeClass() { + driver = new FirefoxDriver(); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + // Open browser + driver.get("https://training-support.net/webelements/simple-form"); + } + + public static List> readExcel(String filePath) { + List> data = new ArrayList>(); + try { + FileInputStream file = new FileInputStream(filePath); + + // Create Workbook instance holding reference to Excel file + XSSFWorkbook workbook = new XSSFWorkbook(file); + + // Get first sheet from the workbook + XSSFSheet sheet = workbook.getSheetAt(0); + + // Iterate through each rows one by one + for (Row cells : sheet) { + // Temp variable + List rowData = new ArrayList(); + for (Cell cell : cells) { + // Store row data + rowData.add(cell.getStringCellValue()); + } + // Store row data in List + data.add(rowData); + } + file.close(); + workbook.close(); + } catch (Exception e) { + e.printStackTrace(); + } + return data; + } + + @DataProvider(name = "Events") + public static Object[][] signUpInfo() { + String filePath = "src/test/resources/sample.xlsx"; + List> data = readExcel(filePath); + return new Object[][] { + { data.get(1) }, + { data.get(2) }, + { data.get(3) } + }; + } + + @Test(dataProvider = "Events") + public void registerTest(List rows) throws InterruptedException { + // Find the input fields and enter text + WebElement fullName = driver.findElement(By.id("full-name")); + fullName.sendKeys(rows.get(0)); + + // Enter the email + driver.findElement(By.id("email")).sendKeys(rows.get(1)); + + // Enter the Date of the event + driver.findElement(By.name("event-date")).sendKeys(rows.get(2).replaceAll("\"", "")); + + // Enter additional details + driver.findElement(By.id("additional-details")).sendKeys(rows.get(3)); + + // Click Submit + driver.findElement(By.xpath("//button[text()='Submit']")).click(); + + // Confirm booking + String message = driver.findElement(By.id("action-confirmation")).getText(); + assertEquals(message, "Your event has been scheduled!"); + + // Refresh the page + driver.navigate().refresh(); + } + + @AfterClass + public void tearDown() { + // Close the browser + driver.quit(); + } +} diff --git a/TestNG/Activities/Activity4_DemoOne.java b/TestNG/Activities/Activity4_DemoOne.java new file mode 100644 index 0000000000..16fdfc4c53 --- /dev/null +++ b/TestNG/Activities/Activity4_DemoOne.java @@ -0,0 +1,16 @@ +package activities; + +import org.testng.annotations.Test; + +public class Activity4_DemoOne { + @Test + public void firstTestCase() { + System.out.println("I'm in first test case from demoOne Class"); + } + + @Test + public void secondTestCase() { + System.out.println("I'm in second test case from demoOne Class"); + } + } + diff --git a/TestNG/Activities/Activity4_DemoTwo.java b/TestNG/Activities/Activity4_DemoTwo.java new file mode 100644 index 0000000000..d3526932a6 --- /dev/null +++ b/TestNG/Activities/Activity4_DemoTwo.java @@ -0,0 +1,13 @@ +package activities; + +import org.testng.annotations.Test; + +public class Activity4_DemoTwo { + + @Test + public void TestCase() { + System.out.println("I'm in the test case from DemoTwo Class"); + } + + +} diff --git a/TestNG/Activities/Activity5.java b/TestNG/Activities/Activity5.java new file mode 100644 index 0000000000..c26775cd95 --- /dev/null +++ b/TestNG/Activities/Activity5.java @@ -0,0 +1,62 @@ +package activities; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.Color; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +public class Activity5 { + + WebDriver driver; + @BeforeClass(alwaysRun = true) + public void setUp() { + driver = new FirefoxDriver(); + + driver.get("https://training-support.net/webelements/target-practice"); + } + + @Test(groups = { "HeaderTests", "ButtonTests" }) + public void pageTitleTest() { + String title = driver.getTitle(); + System.out.println("Title is: " + title); + Assert.assertEquals(title, "Selenium: Target Practice"); + } + + @Test(dependsOnMethods = { "pageTitleTest" }, groups = { "HeaderTests" }) + public void HeaderTest1() { + WebElement header3 = driver.findElement(By.xpath("//h3[contains(@class, 'orange')]")); + Assert.assertEquals(header3.getText(), "Heading #3"); + } + + @Test(dependsOnMethods = { "pageTitleTest" }, groups = { "HeaderTests" }) + public void HeaderTest2() { + Color header5Color = Color.fromString(driver.findElement(By.cssSelector("h5.text-purple-600")).getCssValue("color")); + Assert.assertEquals(header5Color.asHex(), "#9333ea"); + } + + @Test(dependsOnMethods = { "pageTitleTest" }, groups = { "ButtonTests" }) + public void ButtonTest1() { + WebElement button1 = driver.findElement(By.xpath("//button[contains(@class, 'emerald')]")); + Assert.assertEquals(button1.getText(), "Emerald"); + } + + @Test(dependsOnMethods = { "pageTitleTest" }, groups = { "ButtonTests" }) + public void ButtonTest2() { + Color button2Color = Color.fromString(driver.findElement(By.xpath("//button[contains(@class, 'purple')]")).getCssValue("color")); + Assert.assertEquals(button2Color.asHex(), "#581c87"); + } + + + @AfterClass(alwaysRun = true) + public void tearDown() { + + driver.close(); + + } +} + + diff --git a/TestNG/Activities/Activity7.java b/TestNG/Activities/Activity7.java new file mode 100644 index 0000000000..91832d8172 --- /dev/null +++ b/TestNG/Activities/Activity7.java @@ -0,0 +1,82 @@ +package activities; +import java.time.Duration; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.AfterMethod; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; + +public class Activity7 { + WebDriver driver; + WebDriverWait wait; + + @BeforeMethod + public void setUp() { + + //opening the browser + driver = new FirefoxDriver(); + + // adding web driver wait + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + // Open the page + driver.get("https://training-support.net/webelements/login-form"); + } + + @Test(priority = 1) + public void pageTitle() + { + Assert.assertEquals(driver.getTitle(), "Selenium : Login Form"); + } + @DataProvider(name = "Credentials") + public static Object[][] credentials() { + return new Object[][] { + { "admin1", "password1", "Invalid Credentials" }, + { "wrongAdmin", "wrongPassword", "Invalid Credentials" }, + {"wrongUser" , "wrongPassword" , "Invalid Credentials"} + + }; + + + } + + @Test(dataProvider = "Credentials" , priority = 2) + public void loginTest(String username, String password, String expectedMessage) { + + WebElement usernameField = driver.findElement(By.id("username")); + WebElement passwordField = driver.findElement(By.id("password")); + WebElement loginButton = driver.findElement(By.xpath("//button[text()='Submit']")); + + + usernameField.clear(); + passwordField.clear(); + // Enter the credentials and click Log in + usernameField.sendKeys(username); + passwordField.sendKeys(password); + loginButton.click(); + + try { + Thread.sleep(5000); + }catch (InterruptedException e) { + // TODO: handle exception + e.printStackTrace(); + } + // Assert login message + String loginMessage = driver.findElement(By.id("subheading")).getText(); + Assert.assertEquals(loginMessage, expectedMessage); + } + + @AfterClass + public void tearDown() { + // Close the browser + driver.quit(); + } +} \ No newline at end of file From 903f17dab3a73091d44b69d5d4783307d98d4ec9 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:36:42 +0530 Subject: [PATCH 10/51] Add files via upload --- Appium/Activities/ActionsBase.java | 58 +++++++++++++++ Appium/Activities/Activity1.java | 75 +++++++++++++++++++ Appium/Activities/Activity2.java | 75 +++++++++++++++++++ Appium/Activities/Activity3.java | 112 +++++++++++++++++++++++++++++ Appium/Activities/Activity4.java | 5 ++ Appium/Activities/Activity6.java | 94 ++++++++++++++++++++++++ 6 files changed, 419 insertions(+) create mode 100644 Appium/Activities/ActionsBase.java create mode 100644 Appium/Activities/Activity1.java create mode 100644 Appium/Activities/Activity2.java create mode 100644 Appium/Activities/Activity3.java create mode 100644 Appium/Activities/Activity4.java create mode 100644 Appium/Activities/Activity6.java diff --git a/Appium/Activities/ActionsBase.java b/Appium/Activities/ActionsBase.java new file mode 100644 index 0000000000..5b60eb2947 --- /dev/null +++ b/Appium/Activities/ActionsBase.java @@ -0,0 +1,58 @@ +package activities; + +import io.appium.java_client.AppiumDriver; +import org.openqa.selenium.Point; +import org.openqa.selenium.interactions.Pause; +import org.openqa.selenium.interactions.PointerInput; +import org.openqa.selenium.interactions.PointerInput.Kind; +import org.openqa.selenium.interactions.Sequence; + +import java.time.Duration; +import java.util.Arrays; +import static java.time.Duration.ofMillis; +import static org.openqa.selenium.interactions.PointerInput.MouseButton.LEFT; +import static org.openqa.selenium.interactions.PointerInput.Origin.viewport; + +public class ActionsBase { + // Create the pointer + static final PointerInput pointer = new PointerInput(Kind.TOUCH, "finger"); + + // Create the swipe action function + public static void doSwipe(AppiumDriver driver, Point start, Point end, int duration) { + // Create sequence of actions + Sequence swipe = new Sequence(pointer, 1) + .addAction(pointer.createPointerMove(ofMillis(0), viewport(), start.getX(), start.getY())) + .addAction(pointer.createPointerDown(LEFT.asArg())) + .addAction(pointer.createPointerMove(ofMillis(duration), viewport(), end.getX(), end.getY())) + .addAction(pointer.createPointerUp(LEFT.asArg())); + + // Perform the actions + driver.perform(Arrays.asList(swipe)); + } + + // Create the long press action function + public static void longPress(AppiumDriver driver, Point start) { + // Create sequence of actions + Sequence longPress = new Sequence(pointer, 1) + .addAction(pointer.createPointerMove(ofMillis(0), viewport(), start.getX(), start.getY())) + .addAction(pointer.createPointerDown(LEFT.asArg())) + .addAction(new Pause(pointer, Duration.ofMillis(500))) + .addAction(pointer.createPointerUp(LEFT.asArg())); + + // Perform the actions + driver.perform(Arrays.asList(longPress)); + } + + // Create the long press action function + public static void tap(AppiumDriver driver, Point start) { + // Create sequence of actions + Sequence tap = new Sequence(pointer, 1) + .addAction(pointer.createPointerMove(ofMillis(0), viewport(), start.getX(), start.getY())) + .addAction(pointer.createPointerDown(LEFT.asArg())) + .addAction(new Pause(pointer, Duration.ofMillis(100))) + .addAction(pointer.createPointerUp(LEFT.asArg())); + + // Perform the actions + driver.perform(Arrays.asList(tap)); + } +} \ No newline at end of file diff --git a/Appium/Activities/Activity1.java b/Appium/Activities/Activity1.java new file mode 100644 index 0000000000..87e377601d --- /dev/null +++ b/Appium/Activities/Activity1.java @@ -0,0 +1,75 @@ +package activities; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; + +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; +import io.appium.java_client.ios.options.XCUITestOptions; + +public class Activity1 { + AppiumDriver driver; + + //setup appium setup + @BeforeClass + public void androidSetUp() throws MalformedURLException, URISyntaxException + { + UiAutomator2Options options = new UiAutomator2Options(). + setPlatformName("android"). + setAutomationName("UiAutomator2"). + //setApp("path/to/file.apk"). + setAppPackage("com.google.android.calculator"). + setAppActivity("com.android.calculator2.Calculator"). + noReset(); + + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + driver = new AndroidDriver(serverURL , options); + + } + + @Test + public void multiplyTest() { + // Perform the calculation + driver.findElement(AppiumBy.id("digit_6")).click(); + driver.findElement(AppiumBy.accessibilityId("multiply")).click(); + driver.findElement(AppiumBy.id("digit_7")).click(); + driver.findElement(AppiumBy.accessibilityId("equals")).click(); + + // Find the result + String result = driver.findElement(AppiumBy.id("result")).getText(); + + // Assertion + Assert.assertEquals(result, "42"); + } + + + @AfterClass + public void tearDown() + { + driver.quit(); + } + + /*@BeforeClass + public void IOSSetUp() + { + XCUITestOptions options = new XCUITestOptions(). + setPlatformName("ios"). + setAutomationName("XCUITest"). + setApp("path/to/file.ipa"). + noReset(); + }*/ + + + //Set Appium server URL + +} diff --git a/Appium/Activities/Activity2.java b/Appium/Activities/Activity2.java new file mode 100644 index 0000000000..7acd273037 --- /dev/null +++ b/Appium/Activities/Activity2.java @@ -0,0 +1,75 @@ +package activities; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; +import io.appium.java_client.ios.options.XCUITestOptions; + +public class Activity2 { + AppiumDriver driver; + + //setup appium setup + @BeforeClass + public void androidSetUp() throws MalformedURLException, URISyntaxException + { + UiAutomator2Options options = new UiAutomator2Options(). + setPlatformName("android"). + setAutomationName("UiAutomator2"). + //setApp("path/to/file.apk"). + setAppPackage("com.android.chrome"). + setAppActivity("com.google.android.apps.chrome.Main"). + noReset(); + + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + driver = new AndroidDriver(serverURL , options); + driver.get("https://training-support.net"); + + driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(10)); + + } + + @Test + public void chromeTest() { + // Find heading on the page + String pageHeading = driver.findElement(AppiumBy.xpath( + "//android.widget.TextView[@text='Training Support']" + )).getText(); + + // Print to console + System.out.println("Heading: " + pageHeading); + + + + // Find and click the About Us link + driver.findElement(AppiumBy.accessibilityId("About Us")).click(); + + // Find heading of new page and print to console + String aboutPageHeading = driver.findElement(AppiumBy.xpath( + "//android.widget.TextView[@text='About Us']" + )).getText(); + System.out.println(aboutPageHeading); + } + + + @AfterClass + public void tearDown() + { + driver.quit(); + } + + + +} diff --git a/Appium/Activities/Activity3.java b/Appium/Activities/Activity3.java new file mode 100644 index 0000000000..08de8bbafa --- /dev/null +++ b/Appium/Activities/Activity3.java @@ -0,0 +1,112 @@ +package activities; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; + +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity3 { + // Driver Declaration + AndroidDriver driver; + + // Set up method + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.calculator2"); + options.setAppActivity(".Calculator"); + options.noReset(); + + // Server Address + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + // Driver Initialization + driver = new AndroidDriver(serverURL, options); + } + + // Test method + @Test + public void additionTest() { + // Perform the calculation + driver.findElement(AppiumBy.id("digit_5")).click(); + driver.findElement(AppiumBy.accessibilityId("plus")).click(); + driver.findElement(AppiumBy.id("digit_9")).click(); + driver.findElement(AppiumBy.accessibilityId("equals")).click(); + + // Find the result + String result = driver.findElement(AppiumBy.id("result")).getText(); + + // Assertion + Assert.assertEquals(result, "14"); + } + + // Test method + @Test + public void subtractTest() { + // Perform the calculation + driver.findElement(AppiumBy.id("digit_1")).click(); + driver.findElement(AppiumBy.id("digit_0")).click(); + driver.findElement(AppiumBy.accessibilityId("minus")).click(); + driver.findElement(AppiumBy.id("digit_5")).click(); + driver.findElement(AppiumBy.accessibilityId("equals")).click(); + + // Find the result + String result = driver.findElement(AppiumBy.id("result")).getText(); + + // Assertion + Assert.assertEquals(result, "5"); + } + + // Test method + @Test + public void multiplyTest() { + // Perform the calculation + driver.findElement(AppiumBy.id("digit_5")).click(); + driver.findElement(AppiumBy.accessibilityId("multiply")).click(); + driver.findElement(AppiumBy.id("digit_1")).click(); + driver.findElement(AppiumBy.id("digit_0")).click(); + driver.findElement(AppiumBy.id("digit_0")).click(); + driver.findElement(AppiumBy.accessibilityId("equals")).click(); + + // Find the result + String result = driver.findElement(AppiumBy.id("result")).getText(); + + // Assertion + Assert.assertEquals(result, "500"); + } + + // Test method + @Test + public void divideTest() { + // Perform the calculation + driver.findElement(AppiumBy.id("digit_5")).click(); + driver.findElement(AppiumBy.id("digit_0")).click(); + driver.findElement(AppiumBy.accessibilityId("divide")).click(); + driver.findElement(AppiumBy.id("digit_2")).click(); + driver.findElement(AppiumBy.accessibilityId("equals")).click(); + + // Find the result + String result = driver.findElement(AppiumBy.id("result")).getText(); + + // Assertion + Assert.assertEquals(result, "25"); + } + + // Tear down method + @AfterClass + public void tearDown() { + // Close the app + driver.quit(); + } +} \ No newline at end of file diff --git a/Appium/Activities/Activity4.java b/Appium/Activities/Activity4.java new file mode 100644 index 0000000000..08f42aae79 --- /dev/null +++ b/Appium/Activities/Activity4.java @@ -0,0 +1,5 @@ +package activities; + +public class Activity4 { + +} diff --git a/Appium/Activities/Activity6.java b/Appium/Activities/Activity6.java new file mode 100644 index 0000000000..6eba086f79 --- /dev/null +++ b/Appium/Activities/Activity6.java @@ -0,0 +1,94 @@ +package activities; +import static org.testng.Assert.assertTrue; +import static activities.ActionsBase.doSwipe; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity6 { + AndroidDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("Android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.chrome"); + options.setAppActivity("com.google.android.apps.chrome.Main"); + options.noReset(); + + // Server URL + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(20)); + + // Open Selenium page + driver.get("https://training-support.net/webelements/sliders"); + } + + @Test + public void volume75Test() { + // Wait for page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); + // Get the size of the screen + Dimension dims = driver.manage().window().getSize(); + // Set the start and end points + Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .72)); + Point end = new Point((int) (dims.getWidth() * .665), (int) (dims.getHeight() * .72)); + // Perform swipe + doSwipe(driver, start, end, 2000); + + // Get the volume level + String volumeText = driver + .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) + .getText(); + + // Assertions + assertTrue(volumeText.contains("75%")); + } + + @Test + public void volume25Test() { + // Wait for page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); + // Get the size of the screen + Dimension dims = driver.manage().window().getSize(); + // Set the start and end points + Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .72)); + Point end = new Point((int) (dims.getWidth() * .333), (int) (dims.getHeight() * .72)); + // Perform swipe + doSwipe(driver, start, end, 2000); + + // Get the volume level + String volumeText = driver + .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) + .getText(); + + // Assertions + assertTrue(volumeText.contains("25%")); + } + + @AfterClass + public void tearDown() { + // Close the browser + driver.quit(); + } +} \ No newline at end of file From b7b785c4364711bcab8f8a2dd9ef11560f0834bd Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:43:47 +0530 Subject: [PATCH 11/51] Add files via upload --- Appium/Project/Activity1.java | 84 +++++++++++++++++++++++++++ Appium/Project/Activity2.java | 75 ++++++++++++++++++++++++ Appium/Project/Activity3.java | 97 +++++++++++++++++++++++++++++++ Appium/Project/Activity4.java | 99 +++++++++++++++++++++++++++++++ Appium/Project/Activity5.java | 106 ++++++++++++++++++++++++++++++++++ Appium/Project/Activity6.java | 100 ++++++++++++++++++++++++++++++++ 6 files changed, 561 insertions(+) create mode 100644 Appium/Project/Activity1.java create mode 100644 Appium/Project/Activity2.java create mode 100644 Appium/Project/Activity3.java create mode 100644 Appium/Project/Activity4.java create mode 100644 Appium/Project/Activity5.java create mode 100644 Appium/Project/Activity6.java diff --git a/Appium/Project/Activity1.java b/Appium/Project/Activity1.java new file mode 100644 index 0000000000..fcf6efd1d1 --- /dev/null +++ b/Appium/Project/Activity1.java @@ -0,0 +1,84 @@ +package liveProject; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import java.net.MalformedURLException; +import java.net.URL; +import java.time.Duration; +import java.util.List; + +import static org.testng.Assert.assertEquals; + +public class Activity1 { + // Declare driver + AndroidDriver driver; + WebDriverWait wait; + + // Setup method + @BeforeClass + public void setUp() throws MalformedURLException { + // Desired Capabilities + UiAutomator2Options caps = new UiAutomator2Options(); + caps.setPlatformName("android"); + caps.setAutomationName("UiAutomator2"); + caps.setAppPackage("com.app.todolist"); + caps.setAppActivity(".view.MainActivity"); + caps.noReset(); + + // Appium Server URL + URL serverURL = new URL("http://localhost:4723"); + + // Initialization of driver + driver = new AndroidDriver(serverURL, caps); + // Initialization of wait + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + } + + @Test + public void tasksTest1() { + // Tasks to be added + String[][] tasksToAdd = { + {"Complete Activity 1", "High"}, + {"Complete Activity 2", "Medium"}, + {"Complete Activity 3", "Low"} + }; + + // Repeat actions for each task to add + for (String tasks[] : tasksToAdd) { + // Find the create new task button and click it + driver.findElement(AppiumBy.id("fab_new_task")).click(); + // Wait for input field to show and then enter the task name + wait.until(ExpectedConditions.visibilityOfElementLocated(AppiumBy.id("et_new_task_name"))) + .sendKeys(tasks[0]); + // Set the priority + driver.findElement(AppiumBy.id("com.app.todolist:id/tv_new_task_priority")).click(); + wait.until(ExpectedConditions.elementToBeClickable( + AppiumBy.xpath("//android.widget.TextView[@resource-id='android:id/title' and @text='"+ tasks[1] +"']"))) + .click(); + // Click Save + driver.findElement(AppiumBy.id("bt_new_task_ok")).click(); + } + + // Assertions + // Find all the added tasks + List tasksAdded = wait.until(ExpectedConditions. + numberOfElementsToBe(AppiumBy.id("com.app.todolist:id/rl_exlv_task_group_root"), 3)); + // Verify number of tasks added + assertEquals(tasksAdded.size(), 3); + } + + @AfterClass + public void tearDown() { + // Close the app + driver.quit(); + } + +} \ No newline at end of file diff --git a/Appium/Project/Activity2.java b/Appium/Project/Activity2.java new file mode 100644 index 0000000000..c066030615 --- /dev/null +++ b/Appium/Project/Activity2.java @@ -0,0 +1,75 @@ +package liveProject; + +import static activities.ActionsBase.longPress; + +import java.net.MalformedURLException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity2 { + // Declare driver + AndroidDriver driver; + WebDriverWait wait; + + // Setup method + @BeforeClass + public void setUp() throws MalformedURLException { + // Desired Capabilities + UiAutomator2Options caps = new UiAutomator2Options(); + caps.setPlatformName("android"); + caps.setAutomationName("UiAutomator2"); + caps.setAppPackage("com.app.todolist"); + caps.setAppActivity(".view.MainActivity"); + caps.noReset(); + + // Appium Server URL + URL serverURL = new URL("http://localhost:4723"); + + // Initialization of driver + driver = new AndroidDriver(serverURL, caps); + // Initialization of wait + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + } + + @Test + public void tasksTest2() { + // Get the size of the screen + Dimension dims = driver.manage().window().getSize(); + // Set the point of long press + Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .15)); + + // Perform long press on the first list item + longPress(driver, start); + // Select edit task + driver.findElement(AppiumBy.xpath("//android.widget.TextView[@text='Edit To-Do Task']")).click(); + + // Set a deadline for the coming weekend + driver.findElement(AppiumBy.id("tv_todo_list_deadline")).click(); + driver.findElement(AppiumBy.accessibilityId("15 February 2025")).click(); + // Save details + driver.findElement(AppiumBy.id("bt_deadline_ok")).click(); + driver.findElement(AppiumBy.id("bt_new_task_ok")).click(); + + // Assertions + String expectedDeadline = driver.findElement(AppiumBy.id("tv_exlv_task_deadline")).getText(); + Assert.assertEquals(expectedDeadline, "Deadline: 15.02.2025"); + } + + @AfterClass + public void tearDown() { + // Close the app + driver.quit(); + } +} diff --git a/Appium/Project/Activity3.java b/Appium/Project/Activity3.java new file mode 100644 index 0000000000..ce4fc284f0 --- /dev/null +++ b/Appium/Project/Activity3.java @@ -0,0 +1,97 @@ +package liveProject; + +import static activities.ActionsBase.doSwipe; +import static activities.ActionsBase.longPress; +import static org.testng.Assert.assertEquals; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; +import java.util.List; + +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity3 { + AndroidDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.app.todolist"); + options.setAppActivity(".view.MainActivity"); + options.noReset(); + + // Server URL + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(20)); + } + + @Test(priority = 1) + public void tasksTest3_1() { + // Get width and height of the screen + Dimension dims = driver.manage().window().getSize(); + // Set the point to long press + Point longPressPoint = new Point((int) (dims.getWidth() * 0.5), (int) (dims.getHeight() * 0.28)); + // Set the start and end points to move the slider + Point slideStart = new Point((int) (dims.getWidth() * 0.27), (int) (dims.getHeight() * 0.56)); + Point sliderEnd = new Point((int) (dims.getWidth() * 0.593), (int) (dims.getHeight() * 0.56)); + + // Mark the first 2 tasks as complete + List checkBoxes = driver.findElements(AppiumBy.id("com.app.todolist:id/cb_task_done")); + // Click first checkbox + checkBoxes.get(0).click(); + // Click second checkbox + checkBoxes.get(1).click(); + + // Long press the third task to edit + longPress(driver, longPressPoint); + // Click on Edit task + driver.findElement(AppiumBy.xpath("//android.widget.TextView[@text='Edit To-Do Task']")).click(); + // Move the slider to 50% + doSwipe(driver, slideStart, sliderEnd, 2000); + // Click save + driver.findElement(AppiumBy.id("bt_new_task_ok")).click(); + + // Assertions + String progressValue = driver.findElements(AppiumBy.xpath("//android.widget.ProgressBar")).get(2).getText(); + assertEquals(progressValue, "50.0"); + } + + @Test(priority = 2) + public void tasksTest3_2() { + // Find and tap more options + driver.findElement(AppiumBy.accessibilityId("More options")).click(); + // Find and tap Completed tasks + driver.findElement(AppiumBy.xpath("//android.widget.TextView[@text='Completed tasks']")).click(); + + // Get all tasks + List completedTasks = driver + .findElements(AppiumBy.id("com.app.todolist:id/rl_exlv_task_group_root")); + // Assertions + assertEquals(completedTasks.size(), 2); + } + + @AfterClass + public void afterClass() { + driver.quit(); + } +} diff --git a/Appium/Project/Activity4.java b/Appium/Project/Activity4.java new file mode 100644 index 0000000000..7c2b179f7e --- /dev/null +++ b/Appium/Project/Activity4.java @@ -0,0 +1,99 @@ +package liveProject; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.List; +import java.time.Duration; + +import static activities.ActionsBase.doSwipe; + +public class Activity4 { + AndroidDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("Android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.chrome"); + options.setAppActivity("com.google.android.apps.chrome.Main"); + options.noReset(); + + // Server URL + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(20)); + + // Open Selenium page + driver.get("https://training-support.net/webelements"); + } + + @Test + public void webAppTest() throws InterruptedException { + // Get width and height of the screen + Dimension dims = driver.manage().window().getSize(); + System.out.println(dims); + Point start = new Point((int)(dims.getWidth() * 0.5), (int)(dims.getHeight() * 0.8)); + Point end = new Point((int)(dims.getWidth() * 0.5), (int)(dims.getHeight() * 0.6)); + + // Wait for page to load + wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(AppiumBy.xpath("//android.widget.TextView[@text='WebElements']"))); + + // Scroll(Fling) to the end of the page + doSwipe(driver, start, end, 50); + + // Wait for To-Do list link and click it + wait.until(ExpectedConditions.elementToBeClickable( + AppiumBy.xpath("//android.widget.TextView[contains(@text,'To-Do List')]")) + ).click(); + + // Wait for the page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.EditText[@resource-id='todo-input']"))); + + // Find elements on the page + WebElement addTaskInput = driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='todo-input']")); + WebElement addTaskButton = driver.findElement(AppiumBy.xpath("//android.widget.Button[@resource-id='todo-add']")); + // Enter tasks + addTaskInput.sendKeys("Add tasks to list"); + addTaskButton.click(); + addTaskInput.sendKeys("Get number of tasks"); + addTaskButton.click(); + addTaskInput.sendKeys("Clear the list"); + addTaskButton.click(); + + // Find all added tasks + List tasksAdded = driver.findElements(AppiumBy.xpath("//android.widget.ListView/android.view.View")); + // Check off tasks one by one + for(WebElement task : tasksAdded) { + task.findElement(AppiumBy.xpath("//android.view.View/android.widget.CheckBox")).click(); + } + + // Assertion to check if all tasks are added + tasksAdded = driver.findElements(AppiumBy.xpath("//android.widget.ListView/android.view.View")); + Assert.assertEquals(tasksAdded.size(), 5); + } + + @AfterClass + public void afterClass() { + driver.quit(); + } +} diff --git a/Appium/Project/Activity5.java b/Appium/Project/Activity5.java new file mode 100644 index 0000000000..dfead8d106 --- /dev/null +++ b/Appium/Project/Activity5.java @@ -0,0 +1,106 @@ +package liveProject; + +import static activities.ActionsBase.doSwipe; +import static org.testng.Assert.assertEquals; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity5 { + AndroidDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("Android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.chrome"); + options.setAppActivity("com.google.android.apps.chrome.Main"); + options.noReset(); + + // Server URL + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(20)); + + // Open Selenium page + driver.get("https://training-support.net/webelements"); + } + + @Test(priority = 1) + public void loginPageTest() { + // Get width and height of the screen + Dimension dims = driver.manage().window().getSize(); + System.out.println(dims); + Point start = new Point((int) (dims.getWidth() * 0.5), (int) (dims.getHeight() * 0.85)); + Point end = new Point((int) (dims.getWidth() * 0.5), (int) (dims.getHeight() * 0.5)); + + // Wait for page to load + wait.until(ExpectedConditions + .visibilityOfAllElementsLocatedBy(AppiumBy.xpath("//android.widget.TextView[@text='WebElements']"))); + + // Scroll(Fling) to the end of the page + doSwipe(driver, start, end, 145); + + // Wait for Login Form link and click it + wait.until(ExpectedConditions + .elementToBeClickable(AppiumBy.xpath("//android.widget.TextView[contains(@text,'Login Form')]"))) + .click(); + + // Wait for the page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.Button[@text='Submit']"))); + + // Assertion + assertEquals(driver.findElement(AppiumBy.xpath("//android.widget.TextView")).getText(), "Login Form"); + } + + @Test(priority = 2) + public void invalidLoginTest() throws InterruptedException { + // Find the input fields and login + driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='username']")) + .sendKeys("admin"); + driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='password']")) + .sendKeys("WrongPassword"); + driver.findElement(AppiumBy.xpath("//android.widget.Button[@text='Submit']")).click(); + + // Wait for success message to load and get text + String message = wait.until(ExpectedConditions + .visibilityOfElementLocated(AppiumBy.xpath("//android.widget.TextView[@resource-id='subheading']"))) + .getText(); + assertEquals(message, "Invalid credentials"); + } + + @Test(priority = 3) + public void validLoginTest() throws InterruptedException { + // Find the input fields and login + driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='username']")) + .sendKeys("admin"); + driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='password']")) + .sendKeys("password"); + driver.findElement(AppiumBy.xpath("//android.widget.Button[@text='Submit']")).click(); + + // Wait for success message to load and get text + String message = wait + .until(ExpectedConditions.visibilityOfElementLocated(AppiumBy.xpath("//android.widget.TextView[2]"))) + .getText(); + assertEquals(message, "Welcome Back, Admin!"); + } +} diff --git a/Appium/Project/Activity6.java b/Appium/Project/Activity6.java new file mode 100644 index 0000000000..13e0f19dc3 --- /dev/null +++ b/Appium/Project/Activity6.java @@ -0,0 +1,100 @@ +package liveProject; + +import static activities.ActionsBase.doSwipe; +import static activities.ActionsBase.tap; +import static org.testng.Assert.assertEquals; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity6 { + AndroidDriver driver; + WebDriverWait wait; + // Get width and height of the screen + Dimension dims; + + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("Android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.chrome"); + options.setAppActivity("com.google.android.apps.chrome.Main"); + options.noReset(); + + // Server URL + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + dims = driver.manage().window().getSize(); + + // Open Selenium page + driver.get("https://training-support.net/webelements"); + } + + @Test(priority = 1) + public void popupPageTest() { + Point start = new Point((int) (dims.getWidth() * 0.5), (int) (dims.getHeight() * 0.85)); + Point end = new Point((int) (dims.getWidth() * 0.5), (int) (dims.getHeight() * 0.65)); + + // Wait for page to load + wait.until(ExpectedConditions + .visibilityOfAllElementsLocatedBy(AppiumBy.xpath("//android.widget.TextView[@text='WebElements']"))); + + // Scroll(Fling) to the end of the page + doSwipe(driver, start, end, 110); + + // Wait for Login Form link and click it + wait.until(ExpectedConditions + .elementToBeClickable(AppiumBy.xpath("//android.widget.TextView[contains(@text,'Popups')]"))) + .click(); + + // Wait for the page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.Button[@resource-id='launcher']"))); + + // Assertion + assertEquals(driver.findElement(AppiumBy.xpath("//android.widget.TextView")).getText(), "Popups"); + } + + @Test(priority = 2) + public void validLoginTest() throws InterruptedException { + // Point to tap to focus the form + Point start = new Point((int) (dims.getWidth() * 0.5), (int) (dims.getHeight() * 0.27)); + // Find and click the button to launch the popup + driver.findElement(AppiumBy.xpath("//android.widget.Button[@resource-id='launcher']")).click(); + // Click the username field to focus on it + tap(driver, start); + // Wait for form elements to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.Button[@text='Submit']"))); + // Find the input fields and login + driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='username']")) + .sendKeys("admin"); + driver.findElement(AppiumBy.xpath("//android.widget.EditText[@resource-id='password']")) + .sendKeys("password"); + driver.findElement(AppiumBy.xpath("//android.widget.Button[@text='Submit']")).click(); + + // Wait for success message to load and get text + String message = wait + .until(ExpectedConditions.visibilityOfElementLocated(AppiumBy.xpath("//android.widget.TextView[2]"))) + .getText(); + assertEquals(message, "Welcome Back, Admin!"); + } +} \ No newline at end of file From 11a59e7c9b5812d9de0bee6e2c58bd5e4fc79cb3 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:46:22 +0530 Subject: [PATCH 12/51] Create Features --- Cucumber/Activities/Features | 1 + 1 file changed, 1 insertion(+) create mode 100644 Cucumber/Activities/Features diff --git a/Cucumber/Activities/Features b/Cucumber/Activities/Features new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/Cucumber/Activities/Features @@ -0,0 +1 @@ + From 7e7835b0804a88eca87ccb3e5e190c2b83d6c1ae Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:48:40 +0530 Subject: [PATCH 13/51] Add files via upload --- Cucumber/Activities/activity2.feature | 9 +++++++++ Cucumber/Activities/activity4.feature | 9 +++++++++ Cucumber/Activities/activity5.feature | 13 +++++++++++++ Cucumber/Activities/activity6.feature | 11 +++++++++++ Cucumber/Activities/firstTest.feature | 8 ++++++++ 5 files changed, 50 insertions(+) create mode 100644 Cucumber/Activities/activity2.feature create mode 100644 Cucumber/Activities/activity4.feature create mode 100644 Cucumber/Activities/activity5.feature create mode 100644 Cucumber/Activities/activity6.feature create mode 100644 Cucumber/Activities/firstTest.feature diff --git a/Cucumber/Activities/activity2.feature b/Cucumber/Activities/activity2.feature new file mode 100644 index 0000000000..7ac4235ba7 --- /dev/null +++ b/Cucumber/Activities/activity2.feature @@ -0,0 +1,9 @@ +@activity2 +Feature: Activity to test the login feature + +@LoginTest +Scenario: Successful login + Given the user is on the login page + When the user enters username and password + And clicks the submit button + Then get the confirmation message and verify it \ No newline at end of file diff --git a/Cucumber/Activities/activity4.feature b/Cucumber/Activities/activity4.feature new file mode 100644 index 0000000000..5ebefeb74a --- /dev/null +++ b/Cucumber/Activities/activity4.feature @@ -0,0 +1,9 @@ +@activity4 +Feature: Data driven test without Examples + + @loginTest @loginsuccess + Scenario: Testing with correct data from inputs + Given the user is on the login page + When the user enters "admin" and "password" + And clicks the submit button + Then get the confirmation message and verify message as "Welcome Back, admin" \ No newline at end of file diff --git a/Cucumber/Activities/activity5.feature b/Cucumber/Activities/activity5.feature new file mode 100644 index 0000000000..4c9a26cd59 --- /dev/null +++ b/Cucumber/Activities/activity5.feature @@ -0,0 +1,13 @@ +@activity5 +Feature: Data driven test without Examples + + Scenario Outline: Testing with Data data from scenario + Given the user is on the login page + When the user enters "" and "" + And clicks the submit button + Then get the confirmation message and verify message as "" + + Examples: + |Usernames | Passwords | Message | + |admin | password | Welcome Back, Admin!| + |admin | WrongPassword | Invalid credentials | \ No newline at end of file diff --git a/Cucumber/Activities/activity6.feature b/Cucumber/Activities/activity6.feature new file mode 100644 index 0000000000..5556791b73 --- /dev/null +++ b/Cucumber/Activities/activity6.feature @@ -0,0 +1,11 @@ +@activity6 +Feature: Data driven test with DataTable + +@TasksDataTable +Scenario: Adding items to a to-do list + Given User is on the To-Do list page + When User adds the following tasks + | task1 | + | task2 | + | task3 | + Then they can see the task added to the list \ No newline at end of file diff --git a/Cucumber/Activities/firstTest.feature b/Cucumber/Activities/firstTest.feature new file mode 100644 index 0000000000..1bb4beb769 --- /dev/null +++ b/Cucumber/Activities/firstTest.feature @@ -0,0 +1,8 @@ +@activity1 +Feature: Basic syntax + + Scenario: TS home page test + Given the user is on TS home page + When the user clicks on the About us link + Then the user is redirected to About us page + \ No newline at end of file From 89b651ef585aab5d3b14897ede9b8d0d2e63c04d Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:49:13 +0530 Subject: [PATCH 14/51] Add files via upload --- Cucumber/Activities/Activity6.java | 33 +++++++++++++ Cucumber/Activities/BaseClass.java | 12 +++++ Cucumber/Activities/FirstClass.java | 27 +++++++++++ Cucumber/Activities/Fixtures.java | 28 +++++++++++ Cucumber/Activities/LoginSteps.java | 73 +++++++++++++++++++++++++++++ 5 files changed, 173 insertions(+) create mode 100644 Cucumber/Activities/Activity6.java create mode 100644 Cucumber/Activities/BaseClass.java create mode 100644 Cucumber/Activities/FirstClass.java create mode 100644 Cucumber/Activities/Fixtures.java create mode 100644 Cucumber/Activities/LoginSteps.java diff --git a/Cucumber/Activities/Activity6.java b/Cucumber/Activities/Activity6.java new file mode 100644 index 0000000000..245a57a712 --- /dev/null +++ b/Cucumber/Activities/Activity6.java @@ -0,0 +1,33 @@ +package stepdefinitions; +import java.util.List; +import io.cucumber.datatable.DataTable; +import io.cucumber.java.en.Given; +import io.cucumber.java.en.Then; +import io.cucumber.java.en.When; +import org.openqa.selenium.By; + +public class Activity6 extends BaseClass { + + @Given("User is on the To-Do list page") + public void completeRequirement() { + driver.get("https://training-support.net/webelements/todo-list"); + System.out.println("Given completed"); + } + + @When("User adds the following tasks") + public void inputTasks(DataTable inputTasks) throws InterruptedException { + List tasks = inputTasks.asList(); + System.out.println(tasks); + + for(String task : tasks) { + driver.findElement(By.id("todo-input")).sendKeys(task); + driver.findElement(By.id("todo-add")).click(); + Thread.sleep(2000); + } + } + + @Then("they can see the task added to the list") + public void verifyResults() { + System.out.println("All tasks are present"); + } +} \ No newline at end of file diff --git a/Cucumber/Activities/BaseClass.java b/Cucumber/Activities/BaseClass.java new file mode 100644 index 0000000000..0e63ac6381 --- /dev/null +++ b/Cucumber/Activities/BaseClass.java @@ -0,0 +1,12 @@ +package stepdefinitions; + +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.support.ui.WebDriverWait; + +public class BaseClass { + + static WebDriver driver; + static WebDriverWait wait; + + +} diff --git a/Cucumber/Activities/FirstClass.java b/Cucumber/Activities/FirstClass.java new file mode 100644 index 0000000000..c08a39a6d6 --- /dev/null +++ b/Cucumber/Activities/FirstClass.java @@ -0,0 +1,27 @@ +package stepdefinitions; + +import org.openqa.selenium.By; +import static org.junit.jupiter.api.Assertions.assertEquals; +import io.cucumber.java.en.Given; +import io.cucumber.java.en.Then; +import io.cucumber.java.en.When; + +public class FirstClass extends BaseClass { + + @Given("the user is on TS home page") + public void openPage() { + driver.get("https://training-support.net"); + assertEquals(driver.getTitle(), "Training Support"); + + } + + @When("the user clicks on the About us link") + public void clickLink() { + driver.findElement(By.linkText("About Us")).click(); + } + + @Then("the user is redirected to About us page") + public void redirectToAbout() { + assertEquals(driver.getTitle(), "About Training Support"); + } +} diff --git a/Cucumber/Activities/Fixtures.java b/Cucumber/Activities/Fixtures.java new file mode 100644 index 0000000000..401a88026c --- /dev/null +++ b/Cucumber/Activities/Fixtures.java @@ -0,0 +1,28 @@ +package stepdefinitions; + +import java.time.Duration; + +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.WebDriverWait; + +import io.cucumber.java.AfterAll; +import io.cucumber.java.BeforeAll; + +public class Fixtures extends BaseClass{ + + @BeforeAll + public static void setUp() + { + driver = new FirefoxDriver(); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + } + + @AfterAll + public static void tearDown() + { + driver.quit(); + } +} + + diff --git a/Cucumber/Activities/LoginSteps.java b/Cucumber/Activities/LoginSteps.java new file mode 100644 index 0000000000..ed1002f674 --- /dev/null +++ b/Cucumber/Activities/LoginSteps.java @@ -0,0 +1,73 @@ +package stepdefinitions; + +import org.junit.jupiter.api.Assertions; +import org.openqa.selenium.By; +import org.openqa.selenium.support.ui.ExpectedConditions; + +import io.cucumber.java.en.And; +import io.cucumber.java.en.Given; +import io.cucumber.java.en.Then; +import io.cucumber.java.en.When; + +public class LoginSteps extends BaseClass { + @Given("the user is on the login page") + public void openPage() { + // Open the login page + driver.get("https://training-support.net/webelements/login-form"); + // Assert page title + Assertions.assertEquals("Selenium: Login Form", driver.getTitle()); + } + + @When("the user enters username and password") + public void enterCredentials() { + // Find username field and enter username + driver.findElement(By.id("username")).sendKeys("admin"); + // Find password field and enter password + driver.findElement(By.id("password")).sendKeys("password"); + String enteredUserName = driver.findElement(By.id("username")).getAttribute("value"); + System.out.println("User Name field has: " + enteredUserName); + } + + // calling parameter method. + @When("the user enters {string} and {string}") + public void enterCredsWithParam(String username, String password) { + // Find username field and enter username + driver.findElement(By.id("username")).sendKeys(username); + // Find password field and enter password + driver.findElement(By.id("password")).sendKeys(password); + String enteredUserName = driver.findElement(By.id("username")).getAttribute("value"); + Assertions.assertEquals(enteredUserName, "admin"); + } + + @And("clicks the submit button") + public void clickSubmit() { + // Find the submit button and click it + driver.findElement(By.xpath("//button[text()='Submit']")).click(); + } + + @Then("get the confirmation message and verify it") + public void confirmMessage() { + // Find the confirmation message + wait.until(ExpectedConditions.textToBePresentInElementLocated(By.cssSelector("h2.mt-5"), "Welcome")); + String message = driver.findElement(By.cssSelector("h2.mt-5")).getText(); + // Assert message + Assertions.assertEquals("Welcome Back, Admin!", message); + } + + @Then("get the confirmation message and verify message as {string}") + public void confirmMessageAsInput(String expectedMessage) { + // Find the confirmation message + + String message = "Not Found"; + if (expectedMessage.contains("Invalid")) { + message = wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("h2#subheading"))) + .getText(); + } else { + message = wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("h2.text-center"))) + .getText(); + } + + Assertions.assertEquals(expectedMessage, message); + + } +} From f39175d98e3e2cd9db19db9322eecc18a7d8d4ff Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:49:45 +0530 Subject: [PATCH 15/51] Add files via upload --- Cucumber/Activities/TestRunnerClass.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 Cucumber/Activities/TestRunnerClass.java diff --git a/Cucumber/Activities/TestRunnerClass.java b/Cucumber/Activities/TestRunnerClass.java new file mode 100644 index 0000000000..8cd9f7afd9 --- /dev/null +++ b/Cucumber/Activities/TestRunnerClass.java @@ -0,0 +1,14 @@ +package TestRunner; +import org.junit.platform.suite.api.Suite; +import org.junit.platform.suite.api.IncludeEngines; +import org.junit.platform.suite.api.ConfigurationParameter; +import org.junit.platform.suite.api.SelectClasspathResource; +import io.cucumber.junit.platform.engine.Constants; +@Suite +@IncludeEngines("cucumber") +@SelectClasspathResource("Features") +@ConfigurationParameter( + key = Constants.GLUE_PROPERTY_NAME,value = "stepdefinitions") +@ConfigurationParameter( + key = Constants.FILTER_TAGS_PROPERTY_NAME,value = "@activity6") +public class TestRunnerClass {} \ No newline at end of file From 9ae94f462d7fba2a399aefaf3da6106944d165a9 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:52:03 +0530 Subject: [PATCH 16/51] Add files via upload --- Rest_Assured/Activities/ConsumerTest.java | 66 +++++++++++++++++++++++ Rest_Assured/Activities/ProviderTest.java | 30 +++++++++++ 2 files changed, 96 insertions(+) create mode 100644 Rest_Assured/Activities/ConsumerTest.java create mode 100644 Rest_Assured/Activities/ProviderTest.java diff --git a/Rest_Assured/Activities/ConsumerTest.java b/Rest_Assured/Activities/ConsumerTest.java new file mode 100644 index 0000000000..7f313fb444 --- /dev/null +++ b/Rest_Assured/Activities/ConsumerTest.java @@ -0,0 +1,66 @@ +package liveProject; + +import static io.restassured.RestAssured.given; +import static org.hamcrest.Matchers.equalTo; + +import java.util.HashMap; +import java.util.Map; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + +import au.com.dius.pact.consumer.dsl.DslPart; +import au.com.dius.pact.consumer.dsl.PactDslJsonBody; +import au.com.dius.pact.consumer.dsl.PactDslWithProvider; +import au.com.dius.pact.consumer.junit5.PactConsumerTestExt; +import au.com.dius.pact.consumer.junit5.PactTestFor; +import au.com.dius.pact.core.model.RequestResponsePact; +import au.com.dius.pact.core.model.annotations.Pact; + +@ExtendWith(PactConsumerTestExt.class) +public class ConsumerTest { + // Set the headers + Map headers = new HashMap<>(); + + // Create the contract(Pact) + @Pact(consumer = "UserConsumer", provider = "UserProvider") + public RequestResponsePact createPact(PactDslWithProvider builder) { + // Set the headers + headers.put("Content-Type", "application/json"); + // The request and response body + DslPart reqResBody = new PactDslJsonBody(). + numberType("id", 123). + stringType("firstName", "Saahil"). + stringType("lastName", "Sharma"). + stringType("email", "saahil@example.com"); + + // Create the Pact + return builder.given("POST Request") + .uponReceiving("A request to create a user") + .method("POST") + .path("/api/users") + .headers(headers) + .body(reqResBody) + .willRespondWith() + .status(201) + .body(reqResBody) + .toPact(); + } + + // Consumer test with mock provider + @Test + @PactTestFor(providerName = "UserProvider", port = "8282") + public void postRequestTest() { + // Create a request body + Map reqBody = new HashMap<>(); + reqBody.put("id", 123); + reqBody.put("firstName", "Saahil"); + reqBody.put("lastName", "Sharma"); + reqBody.put("email", "saahil@example.com"); + + // Send request, get response, add assertions + given().baseUri("http://localhost:8282/api/users").headers(headers).body(reqBody).log().all() + .when().post() + .then().statusCode(201).body("firstName", equalTo("Saahil")).log().all(); + } +} \ No newline at end of file diff --git a/Rest_Assured/Activities/ProviderTest.java b/Rest_Assured/Activities/ProviderTest.java new file mode 100644 index 0000000000..ee5005982f --- /dev/null +++ b/Rest_Assured/Activities/ProviderTest.java @@ -0,0 +1,30 @@ +package liveProject; + +import au.com.dius.pact.provider.junit.Provider; +import au.com.dius.pact.provider.junit.State; +import au.com.dius.pact.provider.junit.loader.PactFolder; +import au.com.dius.pact.provider.junit5.HttpTestTarget; +import au.com.dius.pact.provider.junit5.PactVerificationContext; +import au.com.dius.pact.provider.junit5.PactVerificationInvocationContextProvider; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.TestTemplate; +import org.junit.jupiter.api.extension.ExtendWith; + +@Provider("UserProvider") +@PactFolder("target/pacts") +public class ProviderTest { + @BeforeEach + public void setUp(PactVerificationContext context) { + HttpTestTarget target = new HttpTestTarget("localhost", 8585); + context.setTarget(target); + } + + @TestTemplate + @ExtendWith(PactVerificationInvocationContextProvider.class) + public void providerTest(PactVerificationContext context) { + context.verifyInteraction(); + } + + @State("POST Request") + public void state1() {} +} \ No newline at end of file From 10e1f1f6ba51c59735673d000ba337c501e4a03c Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:53:02 +0530 Subject: [PATCH 17/51] Add files via upload --- Rest_Assured/Activities/Activity1.java | 81 ++++++++++++++++++ Rest_Assured/Activities/Activity2.java | 95 ++++++++++++++++++++++ Rest_Assured/Activities/Activity3.java | 92 +++++++++++++++++++++ Rest_Assured/Activities/GitHubProject.java | 80 ++++++++++++++++++ Rest_Assured/Activities/userInfo.json | 9 ++ 5 files changed, 357 insertions(+) create mode 100644 Rest_Assured/Activities/Activity1.java create mode 100644 Rest_Assured/Activities/Activity2.java create mode 100644 Rest_Assured/Activities/Activity3.java create mode 100644 Rest_Assured/Activities/GitHubProject.java create mode 100644 Rest_Assured/Activities/userInfo.json diff --git a/Rest_Assured/Activities/Activity1.java b/Rest_Assured/Activities/Activity1.java new file mode 100644 index 0000000000..121252aa71 --- /dev/null +++ b/Rest_Assured/Activities/Activity1.java @@ -0,0 +1,81 @@ +package activities; + +import java.util.HashMap; +import java.util.Map; +import static io.restassured.RestAssured.given; +import static org.hamcrest.Matchers.equalTo; + +import org.testng.annotations.Test; + +public class Activity1 { + + @Test(priority = 1) + + public void addNewPet() + { + Map reqBody = new HashMap<>(); + reqBody.put("id" , 77232); + reqBody.put("name" , "Riley"); + reqBody.put("status" , "alive"); + + // send request , get response , assert response + + given() + .baseUri("https://petstore.swagger.io/v2/pet") + .header("Content-Type" , "application/json") + .body(reqBody) + + .when() + .post() + + .then() + .log().all() + .statusCode(200) + .body("name", equalTo("Riley")) + .body("status", equalTo("alive")); + + } + + @Test(priority = 2) + public void getPetInfo() + { + + given() + .baseUri("https://petstore.swagger.io/v2/pet") + .header("Content-Type" , "application/json") + .pathParam("petId", 77232) + .log().all() + + .when() + .get("/{petId}") + + .then() + .log().all() + .statusCode(200) + .body("name", equalTo("Riley")) + .body("status", equalTo("alive")); + + } + + + + @Test(priority = 3) + public void deletePet() + { + + given() + .baseUri("https://petstore.swagger.io/v2/pet") + .header("Content-Type" , "application/json") + .pathParam("petId", 77232) + .log().all() + + .when() + .delete("/{petId}") + + .then() + .log().all() + .statusCode(200) + .body("message", equalTo("77232")); + } +} + diff --git a/Rest_Assured/Activities/Activity2.java b/Rest_Assured/Activities/Activity2.java new file mode 100644 index 0000000000..a84f6049c0 --- /dev/null +++ b/Rest_Assured/Activities/Activity2.java @@ -0,0 +1,95 @@ +package activities; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileWriter; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; +import static io.restassured.RestAssured.given; +import static org.hamcrest.Matchers.equalTo; + +import org.testng.annotations.Test; + +import io.restassured.response.Response; + +public class Activity2 { + + @Test(priority = 1) + + public void addNewUser() throws IOException + { + FileInputStream inputJson = new FileInputStream("src/test/java/activities/userinfo.json"); + given() + .baseUri("https://petstore.swagger.io/v2/user") + .header("Content-Type" , "application/json") + .body(inputJson) + + + .when() + .post() + + .then() + .body("code", equalTo(200)) + .body("message", equalTo("9901")); + inputJson.close(); + } + + @Test(priority = 2) + public void getUserInfo() + { + File outputJson = new File("src/test/java/activities/userGETResponse.json"); + + Response response = given() + .baseUri("https://petstore.swagger.io/v2/user") + .header("Content-Type" , "application/json") + .pathParam("username", "justinc") + + .when() + .get("/{username}"); + + String restBody = response.getBody().asPrettyString(); + + try { + outputJson.createNewFile(); + + + FileWriter writer = new FileWriter(outputJson.getPath()); + writer.write(restBody); + writer.close(); + + } + catch (IOException e) { + // TODO: handle exception + e.printStackTrace(); + } + + response.then().body("id",equalTo(2293)); + response.then().body("username",equalTo("justinc")); + response.then().body("firstName",equalTo("justinc")); + response.then().body("lastName",equalTo("justinc")); + response.then().body("email",equalTo("justinc")); + response.then().body("password",equalTo("justinc")); + response.then().body("phone",equalTo("justinc")); + + } + + + @Test(priority = 3) + public void deleteUser() + { + + given() + .baseUri("https://petstore.swagger.io/v2/user") + .header("Content-Type" , "application/json") + .pathParam("username","justinc") + + .when() + .delete("/{username}") + + .then() + .body("code", equalTo(200)) + .body("message",equalTo("justinc")); + } +} + diff --git a/Rest_Assured/Activities/Activity3.java b/Rest_Assured/Activities/Activity3.java new file mode 100644 index 0000000000..6ed2e27d07 --- /dev/null +++ b/Rest_Assured/Activities/Activity3.java @@ -0,0 +1,92 @@ +package activities; +import static io.restassured.RestAssured.given; +import static org.hamcrest.CoreMatchers.equalTo; +import java.util.HashMap; +import java.util.Map; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; +import io.restassured.builder.RequestSpecBuilder; +import io.restassured.builder.ResponseSpecBuilder; +import io.restassured.specification.RequestSpecification; +import io.restassured.specification.ResponseSpecification; + +public class Activity3 { + // Declare request specification + RequestSpecification requestSpec; + // Declare response specification + ResponseSpecification responseSpec; + + @BeforeClass + public void setUp() { + // Create request specification + requestSpec = new RequestSpecBuilder() + // Set content type + .addHeader("Content-Type", "application/json") + // Set base URL + .setBaseUri("https://petstore.swagger.io/v2/pet") + // Build request specification + .build(); + + responseSpec = new ResponseSpecBuilder() + // Check status code in response + .expectStatusCode(200) + // Check response content type + .expectContentType("application/json") + // Check if response contains name property + .expectBody("status", equalTo("alive")) + // Build response specification + .build(); + } + + @DataProvider(name = "petInfo") + public Object[][] petInfoProvider() { + // Setting parameters to pass to test case + Object[][] testData = new Object[][] { + { 77232, "Riley", "alive" }, + { 77233, "Hansel", "alive" } + }; + return testData; + } + + @Test(priority=1, dataProvider = "petInfo") + // Test case using a DataProvider + public void addPets(int petId, String petName, String petStatus) { + Map reqBody = new HashMap<>(); + reqBody.put("id", petId); + reqBody.put("name", petName); + reqBody.put("status", petStatus); + + given().spec(requestSpec) // Use requestSpec + .body(reqBody) // Send request body + .when() + .post() // Send POST request + .then().spec(responseSpec) // Assertions using responseSpec + .body("name", equalTo(petName)); // Additional Assertion + } + + // Test case using a DataProvider + @Test( priority=2, dataProvider = "petInfo") + public void getPets(int petId, String petName, String petStatus) { + given().spec(requestSpec) // Use requestSpec + .pathParam("petId", petId) // Add path parameter + .log().all() // Log for request details + .when() + .get("/{petId}") // Send GET request + .then().spec(responseSpec) // Assertions using responseSpec + .body("name", equalTo(petName)) // Additional Assertion + .log().all(); + } + + // Test case using a DataProvider + @Test(priority=3, dataProvider = "petInfo") + public void deletePets(int petId, String petName, String petStatus) { + given().spec(requestSpec) // Use requestSpec + .pathParam("petId", petId) // Add path parameter + .when() + .delete("/{petId}") // Send GET request + .then() + .body("code", equalTo(200)) + .body("message", equalTo(""+petId)); // Assertions using responseSpec + } +} \ No newline at end of file diff --git a/Rest_Assured/Activities/GitHubProject.java b/Rest_Assured/Activities/GitHubProject.java new file mode 100644 index 0000000000..2fe46d8e68 --- /dev/null +++ b/Rest_Assured/Activities/GitHubProject.java @@ -0,0 +1,80 @@ +package activities; +import static io.restassured.RestAssured.given; +import static org.hamcrest.CoreMatchers.equalTo; +import java.util.HashMap; +import java.util.Map; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; +import io.restassured.builder.RequestSpecBuilder; +import io.restassured.builder.ResponseSpecBuilder; +import io.restassured.specification.RequestSpecification; +import io.restassured.specification.ResponseSpecification; + +public class GitHubProject { + // Declare request specification + RequestSpecification requestSpec; + // Declare response specification + ResponseSpecification responseSpec; + + @BeforeClass + public void setUp() { + // Create request specification + requestSpec = new RequestSpecBuilder() + // Set content type + .addHeader("Content-Type", "application/json") + // Set base URL + .setBaseUri("https://petstore.swagger.io/v2/pet") + // Build request specification + .build(); + + responseSpec = new ResponseSpecBuilder() + // Check status code in response + .expectStatusCode(200) + // Check response content type + .expectContentType("application/json") + // Check if response contains name property + .expectBody("status", equalTo("alive")) + // Build response specification + .build(); + } + + public void addPets(int petId, String petName, String petStatus) { + Map reqBody = new HashMap<>(); + reqBody.put("id", petId); + reqBody.put("name", petName); + reqBody.put("status", petStatus); + + given().spec(requestSpec) // Use requestSpec + .body(reqBody) // Send request body + .when() + .post() // Send POST request + .then().spec(responseSpec) // Assertions using responseSpec + .body("name", equalTo(petName)); // Additional Assertion + } + + // Test case using a DataProvider + @Test( priority=2, dataProvider = "petInfo") + public void getPets(int petId, String petName, String petStatus) { + given().spec(requestSpec) // Use requestSpec + .pathParam("petId", petId) // Add path parameter + .log().all() // Log for request details + .when() + .get("/{petId}") // Send GET request + .then().spec(responseSpec) // Assertions using responseSpec + .body("name", equalTo(petName)) // Additional Assertion + .log().all(); + } + + // Test case using a DataProvider + @Test(priority=3, dataProvider = "petInfo") + public void deletePets(int petId, String petName, String petStatus) { + given().spec(requestSpec) // Use requestSpec + .pathParam("petId", petId) // Add path parameter + .when() + .delete("/{petId}") // Send GET request + .then() + .body("code", equalTo(200)) + .body("message", equalTo(""+petId)); // Assertions using responseSpec + } +} \ No newline at end of file diff --git a/Rest_Assured/Activities/userInfo.json b/Rest_Assured/Activities/userInfo.json new file mode 100644 index 0000000000..446f0f55e7 --- /dev/null +++ b/Rest_Assured/Activities/userInfo.json @@ -0,0 +1,9 @@ +{ + "id": 2293, + "username": "justinc", + "firstName": "Justin", + "lastName": "Case", + "email": "justincase@mail.com", + "password": "password123", + "phone": "9812763450" +} \ No newline at end of file From d3461f321e34a2fb937aa677589fdea936fd55b0 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Thu, 27 Mar 2025 11:54:09 +0530 Subject: [PATCH 18/51] Add files via upload --- Selenium/Activities/Activity1.java | 22 +++++++++++++ Selenium/Activities/Activity10.java | 44 +++++++++++++++++++++++++ Selenium/Activities/Activity12.java | 31 ++++++++++++++++++ Selenium/Activities/Activity13.java | 43 ++++++++++++++++++++++++ Selenium/Activities/Activity14.java | 41 +++++++++++++++++++++++ Selenium/Activities/Activity15.java | 33 +++++++++++++++++++ Selenium/Activities/Activity16.java | 36 ++++++++++++++++++++ Selenium/Activities/Activity18.java | 28 ++++++++++++++++ Selenium/Activities/Activity19.java | 28 ++++++++++++++++ Selenium/Activities/Activity2.java | 33 +++++++++++++++++++ Selenium/Activities/Activity21.java | 51 +++++++++++++++++++++++++++++ Selenium/Activities/Activity3.java | 28 ++++++++++++++++ Selenium/Activities/Activity8.java | 51 +++++++++++++++++++++++++++++ 13 files changed, 469 insertions(+) create mode 100644 Selenium/Activities/Activity1.java create mode 100644 Selenium/Activities/Activity10.java create mode 100644 Selenium/Activities/Activity12.java create mode 100644 Selenium/Activities/Activity13.java create mode 100644 Selenium/Activities/Activity14.java create mode 100644 Selenium/Activities/Activity15.java create mode 100644 Selenium/Activities/Activity16.java create mode 100644 Selenium/Activities/Activity18.java create mode 100644 Selenium/Activities/Activity19.java create mode 100644 Selenium/Activities/Activity2.java create mode 100644 Selenium/Activities/Activity21.java create mode 100644 Selenium/Activities/Activity3.java create mode 100644 Selenium/Activities/Activity8.java diff --git a/Selenium/Activities/Activity1.java b/Selenium/Activities/Activity1.java new file mode 100644 index 0000000000..f37483d12f --- /dev/null +++ b/Selenium/Activities/Activity1.java @@ -0,0 +1,22 @@ +package activities; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity1 { + + public static void main(String[] args) { + //initialization of web browser + WebDriver driver = new FirefoxDriver(); + + driver.get("https://training-support.net/"); + + System.out.println("Browsre is open"); + + System.out.println("The Title of the page : "+ driver.getTitle()); + driver.findElement(By.linkText("About Us")).click(); + driver.quit(); + + } + +} diff --git a/Selenium/Activities/Activity10.java b/Selenium/Activities/Activity10.java new file mode 100644 index 0000000000..9dcadb673a --- /dev/null +++ b/Selenium/Activities/Activity10.java @@ -0,0 +1,44 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.interactions.Actions; + +public class Activity10 { + + public static void main(String[] args) { + + WebDriver driver = new FirefoxDriver(); + + Actions builder = new Actions(driver); + driver.get("https://training-support.net/webelements/drag-drop"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + + + WebElement football = driver.findElement(By.id("ball")); + + WebElement dropzone1 = driver.findElement(By.id("dropzone1")); + + WebElement dropzone2 = driver.findElement(By.id("dropzone2")); + + // Perform drag and drop to dropzone 1 + builder.clickAndHold(football).moveToElement(dropzone1).pause(5000).release().build().perform(); + if(dropzone1.findElement(By.className("dropzone-text")).getText().equals("Dropped!")) { + System.out.println("Ball was dropped in Dropzone 1"); + } + + // Perform drag and drop to dropzone 2 + builder.dragAndDrop(football, dropzone2).pause(5000).build().perform(); + if(dropzone2.findElement(By.className("dropzone-text")).getText().equals("Dropped!")) { + System.out.println("Ball was dropped in Dropzone 2"); + } + + + + + } +} diff --git a/Selenium/Activities/Activity12.java b/Selenium/Activities/Activity12.java new file mode 100644 index 0000000000..4aa2d7dc05 --- /dev/null +++ b/Selenium/Activities/Activity12.java @@ -0,0 +1,31 @@ +package activities; + +import java.time.Duration; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; + +public class Activity12 { + public static void main(String[] args) { + //initialization of web browser + + WebDriver driver = new FirefoxDriver(); + + WebDriverWait wait = new WebDriverWait(driver , Duration.ofSeconds(10)); + driver.get("https://training-support.net/webelements/dynamic-content"); + + System.out.println("Page title :" + driver.getTitle()); + + driver.findElement(By.id("genButton")).click(); + wait.until(ExpectedConditions.textToBePresentInElementLocated(By.id("word"), "release")); + System.out.println("word found : "+ driver.findElement(By.id("word")).getText()); + + + + driver.quit(); + +} +} diff --git a/Selenium/Activities/Activity13.java b/Selenium/Activities/Activity13.java new file mode 100644 index 0000000000..4a05120407 --- /dev/null +++ b/Selenium/Activities/Activity13.java @@ -0,0 +1,43 @@ +package activities; + +import java.util.List; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity13 { + + public static void main(String[] args) { + + WebDriver driver = new FirefoxDriver(); + + driver.get("https://training-support.net/webelements/tables"); + + System.out.println("Browsre is open"); + + System.out.println("The Title of the page : "+ driver.getTitle()); + + // Number of columns + List cols = driver.findElements(By.xpath("//table/thead/tr/th")); + System.out.println("Number of columns : "+ cols.size()); + + // Number of Rows + List rows = driver.findElements(By.xpath("//table/tbody/tr")); + System.out.println("Number of rows : "+ rows.size()); + + + System.out.println(driver.findElement(By.xpath("//table/tbody/tr[3]")).getText()); + + List thirdrow = driver.findElements(By.xpath("//table/tbody/tr[3]")); + for(WebElement cell:thirdrow) + { + System.out.println(cell.getText()); + } + + System.out.println(driver.findElement(By.xpath("//table/tbody/tr[2]/td[2]")).getText()); + driver.quit(); + } + +} diff --git a/Selenium/Activities/Activity14.java b/Selenium/Activities/Activity14.java new file mode 100644 index 0000000000..24c6162c01 --- /dev/null +++ b/Selenium/Activities/Activity14.java @@ -0,0 +1,41 @@ +package activities; + +import java.util.List; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity14 { + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/tables"); + + System.out.println("Browsre is open"); + + System.out.println("The Title of the page : "+ driver.getTitle()); + + // Number of columns + List cols = driver.findElements(By.xpath("//table[contains(@class,'table-auto')]/thead/tr/th")); + System.out.println("Number of columns : "+ cols.size()); + + // Number of Rows + List rows = driver.findElements(By.xpath("//table[contains(@class,'table-auto')]/thead/tr")); + System.out.println("Number of rows : "+ rows.size()); + + // 5th row book name + WebElement cellValue = driver.findElement(By.xpath("//table[contains(@class,'table-auto')]/tbody/tr[5]/td[2]")); + System.out.println("Book name before starting: " + cellValue.getText()); + + + // sort the table + + driver.findElement(By.xpath("//table[contains(@class,'table-auto')]/thead/tr/th[5]")).click(); + + + System.out.println("Book name after soring : " + cellValue.getText()); + driver.quit(); + } + +} diff --git a/Selenium/Activities/Activity15.java b/Selenium/Activities/Activity15.java new file mode 100644 index 0000000000..984bfa9bdb --- /dev/null +++ b/Selenium/Activities/Activity15.java @@ -0,0 +1,33 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity15 { + + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/dynamic-attributes"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + WebElement nameField = driver.findElement(By.xpath("//input[contains(@id,'full-name-')]")); + WebElement emailField = driver.findElement(By.xpath("//input[contains(@id,'-email')]")); + WebElement dataField = driver.findElement(By.xpath("//label[contains(text(),'event?')]/folowing-sibling::input[@type='date']")); + WebElement detailsField = driver.findElement(By.xpath("//textarea[contains(@id,'-additional-details-')]")); + + + nameField.sendKeys("malli"); + emailField.sendKeys("gownivarimalli@gmail.com"); + dataField.sendKeys("2025-03-15"); + detailsField.sendKeys("End of course party"); + + driver.findElement(By.xpath("//buttonn[text()='Submit']")).click(); + + String message = driver.findElement(By.id("action-confirmation")).getText(); + System.out.println("Success message : " + message); + driver.quit(); + } +} diff --git a/Selenium/Activities/Activity16.java b/Selenium/Activities/Activity16.java new file mode 100644 index 0000000000..13e9003c00 --- /dev/null +++ b/Selenium/Activities/Activity16.java @@ -0,0 +1,36 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.Select; + +public class Activity16 { + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/selects"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + + WebElement selectElement = driver.findElement(By.cssSelector("select.h-10")); + Select dropdown = new Select(selectElement); + + dropdown.selectByVisibleText("One"); + + System.out.println(dropdown.getFirstSelectedOption().getText()); + + dropdown.selectByIndex(2); + + System.out.println(dropdown.getFirstSelectedOption().getText()); + + dropdown.selectByValue("three"); + + + for(WebElement option : dropdown.getOptions()) + { + System.out.println(option.getText()); + } + } +} diff --git a/Selenium/Activities/Activity18.java b/Selenium/Activities/Activity18.java new file mode 100644 index 0000000000..965c4c63ac --- /dev/null +++ b/Selenium/Activities/Activity18.java @@ -0,0 +1,28 @@ +package activities; + +import org.openqa.selenium.Alert; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity18 { + + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/alerts"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + + driver.findElement(By.id("simple")).click(); + Alert simpleAlert = driver.switchTo().alert(); + + + System.out.println(simpleAlert.getText()); + + simpleAlert.accept(); + + System.out.println("message : "+ driver.findElement(By.id("result")).getText()); + +} +} diff --git a/Selenium/Activities/Activity19.java b/Selenium/Activities/Activity19.java new file mode 100644 index 0000000000..bff91934e9 --- /dev/null +++ b/Selenium/Activities/Activity19.java @@ -0,0 +1,28 @@ +package activities; + +import org.openqa.selenium.Alert; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity19 { + + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/alerts"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + + driver.findElement(By.id("confirmation")).click(); + Alert confirmAlert = driver.switchTo().alert(); + + + System.out.println(confirmAlert.getText()); + + confirmAlert.accept(); + + System.out.println("message : "+ driver.findElement(By.id("result")).getText()); + +} +} diff --git a/Selenium/Activities/Activity2.java b/Selenium/Activities/Activity2.java new file mode 100644 index 0000000000..4e2a29b1a8 --- /dev/null +++ b/Selenium/Activities/Activity2.java @@ -0,0 +1,33 @@ +package activities; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity2 { + + public static void main(String[] args) { + //initialization of web browser + WebDriver driver = new FirefoxDriver(); + + driver.get("https://training-support.net/webelements/login-form/"); + + System.out.println("Browsre is open"); + + System.out.println("The Title of the page : "+ driver.getTitle()); + + + driver.findElement(By.id("username")).sendKeys("admin"); + + driver.findElement(By.id("password")).sendKeys("password"); + + driver.findElement(By.xpath("//button[text()='Submit']")).click(); + + + String message = driver.findElement(By.tagName("h1")).getText(); + System.out.println(message); + + driver.quit(); + + } + +} diff --git a/Selenium/Activities/Activity21.java b/Selenium/Activities/Activity21.java new file mode 100644 index 0000000000..40a3e8d2de --- /dev/null +++ b/Selenium/Activities/Activity21.java @@ -0,0 +1,51 @@ +package activities; + +import java.time.Duration; + +import org.openqa.selenium.Alert; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; + +public class Activity21 { + + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + + WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + driver.get("https://training-support.net/webelements/tabs"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + System.out.println("Current Tab :" + driver.getWindowHandle()); + + wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//button[text()='Open A New Tab']"))).click(); + + wait.until(ExpectedConditions.numberOfWindowsToBe(2)); + + System.out.println("Currently open windows : " + driver.getWindowHandles()); + + + + for(String handle : driver.getWindowHandles()) + { + driver.switchTo().window(handle); + + } + + wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//button[contains(text(),'Another One')]"))).click(); + + wait.until(ExpectedConditions.numberOfWindowsToBe(3)); + + for(String handle : driver.getWindowHandles()) + { + driver.switchTo().window(handle); + } + + driver.quit(); +} +} + diff --git a/Selenium/Activities/Activity3.java b/Selenium/Activities/Activity3.java new file mode 100644 index 0000000000..3bc2fc81ca --- /dev/null +++ b/Selenium/Activities/Activity3.java @@ -0,0 +1,28 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity3 { + public static void main(String[] args) { +WebDriver driver = new FirefoxDriver(); + + driver.get("https://training-support.net/webelements/login-form/"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + + driver.findElement(By.xpath("//input[@placeholder='Username']")).sendKeys("admin"); + + driver.findElement(By.xpath("//input[@placeholder='Password']")).sendKeys("password"); + + driver.findElement(By.xpath("//button[text()='Submit']")).click(); + + String message = driver.findElement(By.tagName("h1")).getText(); + System.out.println("Login message : " + message); + + + + } +} diff --git a/Selenium/Activities/Activity8.java b/Selenium/Activities/Activity8.java new file mode 100644 index 0000000000..036eb17149 --- /dev/null +++ b/Selenium/Activities/Activity8.java @@ -0,0 +1,51 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.interactions.Actions; + +public class Activity8 { + + public static void main(String[] args) { + + WebDriver driver = new FirefoxDriver(); + + Actions builder = new Actions(driver); + driver.get("https://training-support.net/webelements/mouse-events"); + + System.out.println("Browsre is open"); + System.out.println("The Title of the page : "+ driver.getTitle()); + + WebElement cargoLock= driver.findElement(By.xpath("//h1[text()='Cargo.lock']")); + WebElement cargoTom1= driver.findElement(By.xpath("//h1[text()='Cargo.toml']")); + WebElement srcButton= driver.findElement(By.xpath("//h1[text()='src']")); + WebElement targetButton= driver.findElement(By.xpath("//h1[text()='target']")); + + + builder.click(cargoLock).pause(2000).click(cargoTom1).pause(2000).build().perform(); + + + String actionMessage = driver.findElement(By.id("result")).getText(); + System.out.println(actionMessage); + + + builder.doubleClick(srcButton).pause(2000).contextClick(targetButton).pause(2000).perform(); + + WebElement openElement = driver.findElement(By.xpath("//span[text()='Open']")); + builder.click(openElement).build().perform(); + + + actionMessage= driver.findElement(By.id("result")).getText(); + System.out.println(actionMessage); + + + + + driver.quit(); + + + } + +} From 0f622d2365473321e233707c9d1d15796ced4116 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:01:23 -0700 Subject: [PATCH 19/51] Add files via upload --- Java/Activities/Activity1.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 Java/Activities/Activity1.java diff --git a/Java/Activities/Activity1.java b/Java/Activities/Activity1.java new file mode 100644 index 0000000000..dddccaede9 --- /dev/null +++ b/Java/Activities/Activity1.java @@ -0,0 +1,18 @@ +package activities; + +public class Activity1 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Car carObj = new Car("Red", "Auto", 2020); + carObj.displayCharacteristics(); + carObj.accelarate(); + carObj.brake(); + + Car carObj2 = new Car("Blue", "Manual", 2025); + carObj2.displayCharacteristics(); + carObj2.accelarate(); + carObj2.brake(); + } + +} From 01d88479ac7cbf94c7fba8875d04e3e1a58cb4a5 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:03:06 -0700 Subject: [PATCH 20/51] Add files via upload --- Java/Activities/Activity10.java | 39 +++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Java/Activities/Activity10.java diff --git a/Java/Activities/Activity10.java b/Java/Activities/Activity10.java new file mode 100644 index 0000000000..e83828f53b --- /dev/null +++ b/Java/Activities/Activity10.java @@ -0,0 +1,39 @@ +package activities; + +import java.util.HashSet; + +public class Activity10 { + public static void main(String[] args) { + HashSet hs = new HashSet(); + // Adding element to HashSet + hs.add("M"); + hs.add("B"); + hs.add("C"); + hs.add("A"); + hs.add("M"); + hs.add("X"); + + //Print HashSet + System.out.println("Original HashSet: " + hs); + //Print size of HashSet + System.out.println("Size of HashSet: " + hs.size()); + + //Remove element + System.out.println("Removing A from HashSet: " + hs.remove("A")); + //Remove element that is not present + if(hs.remove("Z")) { + System.out.println("Z removed from the Set"); + } else { + System.out.println("Z is not present in the Set"); + } + + //Search for element + System.out.println("Checking if M is present: " + hs.contains("M")); + //Print updated HashSet + System.out.println("Updated HashSet: " + hs); + + hs.removeAll(hs); + //Print size of HashSet + System.out.println("is HashSet empty: " + hs.isEmpty()); + } +} From 86b571168a3763a0f95534e1a830a65323879840 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:05:11 -0700 Subject: [PATCH 21/51] Add files via upload --- Selenium/Activities/Activity11.java | 43 +++++++++++++++++++++++++++++ Selenium/Activities/Activity4.java | 36 ++++++++++++++++++++++++ Selenium/Activities/Activity5.java | 32 +++++++++++++++++++++ Selenium/Activities/Activity6.java | 32 +++++++++++++++++++++ 4 files changed, 143 insertions(+) create mode 100644 Selenium/Activities/Activity11.java create mode 100644 Selenium/Activities/Activity4.java create mode 100644 Selenium/Activities/Activity5.java create mode 100644 Selenium/Activities/Activity6.java diff --git a/Selenium/Activities/Activity11.java b/Selenium/Activities/Activity11.java new file mode 100644 index 0000000000..75436f3b99 --- /dev/null +++ b/Selenium/Activities/Activity11.java @@ -0,0 +1,43 @@ +package activities; + +import java.time.Duration; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; + +public class Activity11 { + public static void main(String[] args) { + // Driver object reference + WebDriver driver = new FirefoxDriver(); + WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + // Open the browser + driver.get("https://www.training-support.net/webelements/dynamic-controls"); + + // Verify page title + System.out.println("Page title is: " + driver.getTitle()); + + // Find the checkbox and make sure it is visible + WebElement checkbox = driver.findElement(By.id("checkbox")); + System.out.println("Checkbox is visible? " + checkbox.isDisplayed()); + + // Find the button to toggle it and click it + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + // Wait for it to disappear + wait.until(ExpectedConditions.invisibilityOf(checkbox)); + // Check if it is visible + System.out.println("Checkbox is visible? " + checkbox.isDisplayed()); + + // Toggle the checkbox and click it + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + wait.until(ExpectedConditions.elementToBeClickable(checkbox)).click(); + // Check if it is selected + System.out.println("Checkbox is selected? " + checkbox.isSelected()); + + // Close the browser + driver.quit(); + } +} diff --git a/Selenium/Activities/Activity4.java b/Selenium/Activities/Activity4.java new file mode 100644 index 0000000000..3deff51f38 --- /dev/null +++ b/Selenium/Activities/Activity4.java @@ -0,0 +1,36 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.Color; + +public class Activity4 { + public static void main(String[] args) { + // Create a new instance of the Firefox driver + WebDriver driver = new FirefoxDriver(); + + // Open the page + driver.get("https://training-support.net/webelements/target-practice"); + // Print the title of the page + System.out.println("Page title: " + driver.getTitle()); + + // Find the 3rd header and print its text + String thirdHeaderText = driver.findElement(By.xpath("//h3[contains(text(), '#3')]")).getText(); + System.out.println(thirdHeaderText); + // Find the 5th header and print its color + Color fifthHeaderColor = Color.fromString(driver.findElement(By.xpath("//h5[contains(text(), '#5')]")).getCssValue("color")); + System.out.println("Color as RGB: " + fifthHeaderColor.asRgb()); + System.out.println("Color as hexcode: " + fifthHeaderColor.asHex()); + + // Find the violet button and print its classes + String purpleButtonClass = driver.findElement(By.xpath("//button[text()='Purple']")).getDomAttribute("class"); + System.out.println(purpleButtonClass); + // Find the grey button and print its text + String slateButtonText = driver.findElement(By.xpath("//button[contains(@class, 'slate')]")).getText(); + System.out.println(slateButtonText); + + // Close the browser + driver.quit(); + } +} \ No newline at end of file diff --git a/Selenium/Activities/Activity5.java b/Selenium/Activities/Activity5.java new file mode 100644 index 0000000000..4192283a2e --- /dev/null +++ b/Selenium/Activities/Activity5.java @@ -0,0 +1,32 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity5 { + public static void main(String[] args) { + // Initialize the Firefox driver + WebDriver driver = new FirefoxDriver(); + + // Open the page + driver.get("https://training-support.net/webelements/dynamic-controls"); + // Print the title of the page + System.out.println("Page title: " + driver.getTitle()); + + // Find the checkbox + WebElement checkbox = driver.findElement(By.id("checkbox")); + // Find the toggle button and click it + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + // Check if it is displayed on the page + System.out.println("Checkbox is displayed: " + checkbox.isDisplayed()); + // Click the button again + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + // Check if it is displayed on the page + System.out.println("Checkbox is displayed: " + checkbox.isDisplayed()); + + // Close the browser + driver.quit(); + } +} diff --git a/Selenium/Activities/Activity6.java b/Selenium/Activities/Activity6.java new file mode 100644 index 0000000000..bc8e522d5a --- /dev/null +++ b/Selenium/Activities/Activity6.java @@ -0,0 +1,32 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity6 { + public static void main(String[] args) { + // Initialize the Firefox driver + WebDriver driver = new FirefoxDriver(); + + // Open the page + driver.get("https://training-support.net/webelements/dynamic-controls"); + // Print the title of the page + System.out.println("Page title: " + driver.getTitle()); + + // Find the checkbox + WebElement checkbox = driver.findElement(By.id("checkbox")); + // Click it + checkbox.click(); + // Check if it is selected + System.out.println("Checkbox is selected: " + checkbox.isSelected()); + // Click the checkbox again + checkbox.click(); + // Check if it is selected + System.out.println("Checkbox is selected: " + checkbox.isSelected()); + + // Close the browser + driver.quit(); + } +} From 59a690a7e0478fc6fbb0cb3de8b30fed95daa66b Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:07:07 -0700 Subject: [PATCH 22/51] Add files via upload --- Selenium/Activities/activity1.py | 17 +++++++++++++ Selenium/Activities/activity10.py | 30 +++++++++++++++++++++++ Selenium/Activities/activity11.py | 31 ++++++++++++++++++++++++ Selenium/Activities/activity12.py | 21 ++++++++++++++++ Selenium/Activities/activity13.py | 27 +++++++++++++++++++++ Selenium/Activities/activity14.py | 32 +++++++++++++++++++++++++ Selenium/Activities/activity15.py | 31 ++++++++++++++++++++++++ Selenium/Activities/activity16.py | 37 ++++++++++++++++++++++++++++ Selenium/Activities/activity17.py | 37 ++++++++++++++++++++++++++++ Selenium/Activities/activity18.py | 30 +++++++++++++++++++++++ Selenium/Activities/activity19.py | 30 +++++++++++++++++++++++ Selenium/Activities/activity2.py | 29 ++++++++++++++++++++++ Selenium/Activities/activity20.py | 33 +++++++++++++++++++++++++ Selenium/Activities/activity21.py | 40 +++++++++++++++++++++++++++++++ Selenium/Activities/activity22.py | 32 +++++++++++++++++++++++++ Selenium/Activities/activity3.py | 29 ++++++++++++++++++++++ Selenium/Activities/activity4.py | 29 ++++++++++++++++++++++ Selenium/Activities/activity5.py | 23 ++++++++++++++++++ Selenium/Activities/activity6.py | 22 +++++++++++++++++ Selenium/Activities/activity7.py | 20 ++++++++++++++++ Selenium/Activities/activity8.py | 34 ++++++++++++++++++++++++++ Selenium/Activities/activity9.py | 21 ++++++++++++++++ 22 files changed, 635 insertions(+) create mode 100644 Selenium/Activities/activity1.py create mode 100644 Selenium/Activities/activity10.py create mode 100644 Selenium/Activities/activity11.py create mode 100644 Selenium/Activities/activity12.py create mode 100644 Selenium/Activities/activity13.py create mode 100644 Selenium/Activities/activity14.py create mode 100644 Selenium/Activities/activity15.py create mode 100644 Selenium/Activities/activity16.py create mode 100644 Selenium/Activities/activity17.py create mode 100644 Selenium/Activities/activity18.py create mode 100644 Selenium/Activities/activity19.py create mode 100644 Selenium/Activities/activity2.py create mode 100644 Selenium/Activities/activity20.py create mode 100644 Selenium/Activities/activity21.py create mode 100644 Selenium/Activities/activity22.py create mode 100644 Selenium/Activities/activity3.py create mode 100644 Selenium/Activities/activity4.py create mode 100644 Selenium/Activities/activity5.py create mode 100644 Selenium/Activities/activity6.py create mode 100644 Selenium/Activities/activity7.py create mode 100644 Selenium/Activities/activity8.py create mode 100644 Selenium/Activities/activity9.py diff --git a/Selenium/Activities/activity1.py b/Selenium/Activities/activity1.py new file mode 100644 index 0000000000..3c9ea0650e --- /dev/null +++ b/Selenium/Activities/activity1.py @@ -0,0 +1,17 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the "About Us" button on the page using ID and click it + driver.find_element(By.LINK_TEXT, "About Us").click() + + # Print the title of the new page + print("New page title is: ", driver.title) \ No newline at end of file diff --git a/Selenium/Activities/activity10.py b/Selenium/Activities/activity10.py new file mode 100644 index 0000000000..944d8039d9 --- /dev/null +++ b/Selenium/Activities/activity10.py @@ -0,0 +1,30 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver import ActionChains +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the actions variable + actions = ActionChains(driver) + # Navigate to the URL + driver.get("https://training-support.net/webelements/drag-drop") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the football + football = driver.find_element(By.ID, "ball") + # Find the dropzone1 + dropzone1 = driver.find_element(By.ID, "dropzone1") + # Find the dropzone2 + dropzone2 = driver.find_element(By.ID, "dropzone2") + + # Perform drag and drop to dropzone 1 + actions.click_and_hold(football).move_to_element(dropzone1).pause(5).release().perform() + if(dropzone1.find_element(By.CLASS_NAME, "dropzone-text").text == "Dropped!"): + print("Ball was dropped in Dropzone 1") + + # Perform drag and drop to dropzone 2 + actions.drag_and_drop(football, dropzone2).pause(5).perform() + if(dropzone2.find_element(By.CLASS_NAME, "dropzone-text").text == "Dropped!"): + print("Ball was dropped in Dropzone 2") \ No newline at end of file diff --git a/Selenium/Activities/activity11.py b/Selenium/Activities/activity11.py new file mode 100644 index 0000000000..470468fa9c --- /dev/null +++ b/Selenium/Activities/activity11.py @@ -0,0 +1,31 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/dynamic-controls") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the checkbox and make sure it is visible + checkbox = driver.find_element(By.ID, "checkbox") + print("Checkbox is visible? ", checkbox.is_displayed()) + + # Find the button to toggle it and click it + driver.find_element(By.XPATH, "//button[text()='Toggle Checkbox']").click() + # Wait for it to disappear + wait.until(EC.invisibility_of_element(checkbox)) + # Check if it is visible + print("Checkbox is visible? ", checkbox.is_displayed()) + + # Toggle the checkbox and click it + driver.find_element(By.XPATH, "//button[text()='Toggle Checkbox']").click() + wait.until(EC.element_to_be_clickable(checkbox)).click() + # Check if it is selected + print("Checkbox is selected? ", checkbox.is_selected()) \ No newline at end of file diff --git a/Selenium/Activities/activity12.py b/Selenium/Activities/activity12.py new file mode 100644 index 0000000000..50a46f9ed2 --- /dev/null +++ b/Selenium/Activities/activity12.py @@ -0,0 +1,21 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/dynamic-content") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the button and click it + driver.find_element(By.ID, "genButton").click() + # Wait for the word to appear + if wait.until(EC.text_to_be_present_in_element((By.ID, "word"), "release")): + # Print the text to console + print("Word found: ", driver.find_element(By.ID, "word").text) \ No newline at end of file diff --git a/Selenium/Activities/activity13.py b/Selenium/Activities/activity13.py new file mode 100644 index 0000000000..0d0ee41999 --- /dev/null +++ b/Selenium/Activities/activity13.py @@ -0,0 +1,27 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/tables") + # Print the title of the page + print("Page title is: ", driver.title) + + # Print the number of columns + cols = driver.find_elements(By.XPATH, "//table[contains(@class, 'table-auto')]/thead/tr/th") + print("Number of columns: ", len(cols)) + # Print the number of rows + rows = driver.find_elements(By.XPATH, "//table[contains(@class, 'table-auto')]/tbody/tr") + print("Number of rows: ", len(rows)) + + # Print the cells values of the third row + thirdRow = driver.find_elements(By.XPATH, "//table[contains(@class, 'table-auto')]/tbody/tr[3]/td") + print("Third row cell values: ") + for cell in thirdRow: + print(cell.text) + + # Print the cell value of the second row and second column + cellValue = driver.find_element(By.XPATH, "//table[contains(@class, 'table-auto')]/tbody/tr[2]/td[2]") + print("Second row, second cell value: ", cellValue.text) \ No newline at end of file diff --git a/Selenium/Activities/activity14.py b/Selenium/Activities/activity14.py new file mode 100644 index 0000000000..afdd9bd1ae --- /dev/null +++ b/Selenium/Activities/activity14.py @@ -0,0 +1,32 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/tables") + # Print the title of the page + print("Page title is: ", driver.title) + + # Print the number of columns + cols = driver.find_elements(By.XPATH, "//table[contains(@class, 'table-auto')]/thead/tr/th") + print("Number of columns: ", len(cols)) + # Print the number of rows + rows = driver.find_elements(By.XPATH, "//table[contains(@class, 'table-auto')]/tbody/tr") + print("Number of rows: ", len(rows)) + + # Print the Book Name in the 5th row + cellValue = driver.find_element(By.XPATH, "//table[contains(@class, 'table-auto')]/tbody/tr[5]/td[2]") + print("Book name before sorting: ", cellValue.text) + + # Sort the table + driver.find_element(By.XPATH, "//table[contains(@class, 'table-auto')]/thead/tr/th[5]").click() + + # Print the cell value of the second row and second column again + cellValue = driver.find_element(By.XPATH, "//table[contains(@class, 'table-auto')]/tbody/tr[5]/td[2]") + print("Book Name after sorting: ", cellValue.text) \ No newline at end of file diff --git a/Selenium/Activities/activity15.py b/Selenium/Activities/activity15.py new file mode 100644 index 0000000000..1e8ac729d5 --- /dev/null +++ b/Selenium/Activities/activity15.py @@ -0,0 +1,31 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/dynamic-attributes") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the input fields + fullName = driver.find_element(By.XPATH, "//input[starts-with(@id, 'full-name')]") + email = driver.find_element(By.XPATH, "//input[contains(@id, '-email')]") + eventDate = driver.find_element(By.XPATH, "//input[contains(@name, '-event-date-')]") + details = driver.find_element(By.XPATH, "//textarea[contains(@id, '-additional-details-')]") + # Enter the details + fullName.send_keys("Raiden Shogun") + email.send_keys("raiden@electromail.com") + eventDate.send_keys("2025-06-26") + details.send_keys("It will be electric!") + # Find and click the submit button + driver.find_element(By.XPATH, "//button[text()='Submit']").click() + + # Wait for the success message and print it + message = wait.until(EC.visibility_of_element_located((By.ID, "action-confirmation"))).text + print("Success message: ", message) \ No newline at end of file diff --git a/Selenium/Activities/activity16.py b/Selenium/Activities/activity16.py new file mode 100644 index 0000000000..8203dd373d --- /dev/null +++ b/Selenium/Activities/activity16.py @@ -0,0 +1,37 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support.select import Select + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/selects") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the dropdown + dropdown = driver.find_element(By.CSS_SELECTOR, "select.h-10") + # Pass the WebElement to the Select object + singleSelect = Select(dropdown) + + # Select the second option using visible text + singleSelect.select_by_visible_text("Two") + # Print the selected option + print("Second option: " + singleSelect.first_selected_option.text) + + # Select the third option using index + singleSelect.select_by_index(3) + # Print the selected option + print("Third option: " + singleSelect.first_selected_option.text) + + # Select the fourth option using value attribute + singleSelect.select_by_value("four") + # Print the selected option + print("Fourth option: " + singleSelect.first_selected_option.text) + + # Print all the options + allOptions = singleSelect.options + print("Options in the dropdown: ") + for option in allOptions: + print(option.text) \ No newline at end of file diff --git a/Selenium/Activities/activity17.py b/Selenium/Activities/activity17.py new file mode 100644 index 0000000000..223c783aa1 --- /dev/null +++ b/Selenium/Activities/activity17.py @@ -0,0 +1,37 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support.select import Select + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/selects") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the dropdown + selectElement = driver.find_element(By.CSS_SELECTOR, "select.h-80") + # Pass the WebElement to the Select object + multiSelect = Select(selectElement) + + # Select "HTML" using visible text + multiSelect.select_by_visible_text("HTML") + # Select 4th, 5th, and 6th index options + for i in range(3, 5): + multiSelect.select_by_index(i) + # Select "Node" using value attribute + multiSelect.select_by_value("nodejs") + # Print the selected options + selectedOptions = multiSelect.all_selected_options + print("Selected options are: ") + for option in selectedOptions: + print(option.text) + + # Deselect the 5th index option + multiSelect.deselect_by_index(4) + # Print the selected options + selectedOptions = multiSelect.all_selected_options + print("Selected options are: ") + for option in selectedOptions: + print(option.text) \ No newline at end of file diff --git a/Selenium/Activities/activity18.py b/Selenium/Activities/activity18.py new file mode 100644 index 0000000000..ae2e8a0e2b --- /dev/null +++ b/Selenium/Activities/activity18.py @@ -0,0 +1,30 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/alerts") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find and click the button to open the alert + driver.find_element(By.ID, "simple").click() + + # Switch focus to the alert + simpleAlert = wait.until(EC.alert_is_present()) + + # Print the text in the alert + alertText = simpleAlert.text + print("Text in alert: " + alertText) + + # Close the alert by clicking OK + simpleAlert.accept() + + # Print the message + print(driver.find_element(By.ID, "result").text) \ No newline at end of file diff --git a/Selenium/Activities/activity19.py b/Selenium/Activities/activity19.py new file mode 100644 index 0000000000..7044b9debb --- /dev/null +++ b/Selenium/Activities/activity19.py @@ -0,0 +1,30 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/alerts") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find and click the button to open the alert + driver.find_element(By.ID, "confirmation").click() + + # Switch focus to the alert + confirmAlert = wait.until(EC.alert_is_present()) + + # Print the text in the alert + alertText = confirmAlert.text + print("Text in alert: " + alertText) + + # Close the alert by clicking OK + confirmAlert.dismiss() + + # Print the message + print(driver.find_element(By.ID, "result").text) \ No newline at end of file diff --git a/Selenium/Activities/activity2.py b/Selenium/Activities/activity2.py new file mode 100644 index 0000000000..af67b5fbd8 --- /dev/null +++ b/Selenium/Activities/activity2.py @@ -0,0 +1,29 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/login-form") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the username field + username = driver.find_element(By.ID, "username") + # Find the password field + password = driver.find_element(By.ID, "password") + + # Enter the given credentials + # Enter username + username.send_keys("admin") + # Enter password + password.send_keys("password") + + # Find the login button + login = driver.find_element(By.XPATH, "//button[text()='Submit']") + login.click() + + # Print the login message + message = driver.find_element(By.CSS_SELECTOR, "h1.text-center") + print("Login message: ", message.text) \ No newline at end of file diff --git a/Selenium/Activities/activity20.py b/Selenium/Activities/activity20.py new file mode 100644 index 0000000000..72f60b9fc1 --- /dev/null +++ b/Selenium/Activities/activity20.py @@ -0,0 +1,33 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/alerts") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find and click the button to open the alert + driver.find_element(By.ID, "prompt").click() + + # Switch focus to the alert + promptAlert = wait.until(EC.alert_is_present()) + + # Print the text in the alert + alertText = promptAlert.text + print("Text in alert: " + alertText) + + # Type text in the prompt alert + promptAlert.send_keys("Awesome!") + + # Close the alert by clicking OK + promptAlert.accept() + + # Print the message + print(driver.find_element(By.ID, "result").text) \ No newline at end of file diff --git a/Selenium/Activities/activity21.py b/Selenium/Activities/activity21.py new file mode 100644 index 0000000000..c80b0a3fe6 --- /dev/null +++ b/Selenium/Activities/activity21.py @@ -0,0 +1,40 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/tabs") + # Print the title of the page + print("Page title is: ", driver.title) + # Print the handle of the parent window + print("Current tab: ", driver.current_window_handle) + + # Find button to open new tab + wait.until(EC.element_to_be_clickable((By.XPATH, "//button[text()='Open A New Tab']"))).click() + # Wait for the second tab to open + wait.until(EC.number_of_windows_to_be(2)) + # Print all window handles + print("Currently open windows: ", driver.window_handles) + driver.switch_to.window(driver.window_handles[1]) + + # Wait for the new page to load + wait.until(EC.element_to_be_clickable((By.XPATH, "//button[contains(text(), 'Another One')]"))) + # Print the handle of the current tab + print("Current tab: ", driver.current_window_handle) + # Print the title and heading of the new page + print("New Page title: ", driver.title) + print("New Page message: ", driver.find_element(By.CSS_SELECTOR, "h2.mt-5").text) + # Find and click the button on page to open another tab + driver.find_element(By.XPATH, "//button[contains(text(), 'Another One')]").click() + + # Wait for new tab to open + wait.until(EC.number_of_windows_to_be(3)) + # Switch focus + for handle in driver.window_handles: + driver.switch_to.window(driver.window_handles[2]) \ No newline at end of file diff --git a/Selenium/Activities/activity22.py b/Selenium/Activities/activity22.py new file mode 100644 index 0000000000..ab5c77298f --- /dev/null +++ b/Selenium/Activities/activity22.py @@ -0,0 +1,32 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.support.wait import WebDriverWait + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the wait variable + wait = WebDriverWait(driver, timeout=10) + # Navigate to the URL + driver.get("https://training-support.net/webelements/popups") + # Print the title of the page + print("Page title is: ", driver.title) + # Find the launcher button and click it + driver.find_element(By.ID, "launcher").click() + + # Wait for the modal to appear + wait.until(EC.element_to_be_clickable((By.ID, "username"))) + + # Find the input fields + username = driver.find_element(By.ID, "username") + password = driver.find_element(By.ID, "password") + # Enter the credentials + username.send_keys("admin") + password.send_keys("password") + # Click the submit button + driver.find_element(By.XPATH, "//button[text()='Submit']").click() + + # Print the success message + message = driver.find_element(By.CSS_SELECTOR, "h2.text-center").text + print("Login message: " + message) \ No newline at end of file diff --git a/Selenium/Activities/activity3.py b/Selenium/Activities/activity3.py new file mode 100644 index 0000000000..6bf6a98b8e --- /dev/null +++ b/Selenium/Activities/activity3.py @@ -0,0 +1,29 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/login-form") + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the username field + username = driver.find_element(By.XPATH, "//input[@id='username']") + # Find the password field + password = driver.find_element(By.XPATH, "//input[@id='password']") + + # Enter the given credentials + # Enter username + username.send_keys("admin") + # Enter password + password.send_keys("password") + + # Find the login button + login = driver.find_element(By.XPATH, "//button[text()='Submit']") + login.click() + + # Print the login message + message = driver.find_element(By.XPATH, "//h1[contains(@class, 'text-center')]") + print("Login message: ", message.text) \ No newline at end of file diff --git a/Selenium/Activities/activity4.py b/Selenium/Activities/activity4.py new file mode 100644 index 0000000000..e20070e9c8 --- /dev/null +++ b/Selenium/Activities/activity4.py @@ -0,0 +1,29 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support.color import Color + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/target-practice") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the 3rd header element on the page using XPath + third_heading = driver.find_element(By.XPATH, "//h3[contains(text(), '#3')]") + print("Third heading text is: ", third_heading.text) + + # Find the 5th header element on the page using XPath + fifth_heading_color = Color.from_string(driver.find_element(By.XPATH, "//h5[contains(text(), '#5')]").value_of_css_property("color")) + print("Fifth heading colour as Hexcode: ", fifth_heading_color.hex) + print("Fifth heading colour as RGB: ", fifth_heading_color.rgb) + + # Find the Purple button element on the page + purple_button = driver.find_element(By.XPATH, "//button[text()='Purple']") + print("Purple button's classes are: ", purple_button.get_attribute("class")) + + # Find the Slate button element on the page + slate_button = driver.find_element(By.XPATH, "//button[contains(@class, 'slate')]") + print("Text in slate button is: ", slate_button.text) \ No newline at end of file diff --git a/Selenium/Activities/activity5.py b/Selenium/Activities/activity5.py new file mode 100644 index 0000000000..7ad28edf31 --- /dev/null +++ b/Selenium/Activities/activity5.py @@ -0,0 +1,23 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/dynamic-controls") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the checkbox + checkbox = driver.find_element(By.ID, "checkbox") + # Find the checkbox toggle button + checkbox_toggle = driver.find_element(By.XPATH, "//button[text()='Toggle Checkbox']") + # Verify if the checkbox is displayed or not + print("Checkbox is visible: ", checkbox.is_displayed()) + + # Click the checkbox_toggle button to hide checkbox + checkbox_toggle.click() + # Verify again if the checkbox is displayed or not + print("Checkbox is visible: ", checkbox.is_displayed()) \ No newline at end of file diff --git a/Selenium/Activities/activity6.py b/Selenium/Activities/activity6.py new file mode 100644 index 0000000000..dd49b16fbb --- /dev/null +++ b/Selenium/Activities/activity6.py @@ -0,0 +1,22 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/dynamic-controls") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the checkbox + checkbox = driver.find_element(By.ID, "checkbox") + # Click it + checkbox.click() + # Verify if the checkbox is selected or not + print("Checkbox is visible: ", checkbox.is_selected()) + # Click it again + checkbox.click() + # Verify again if the checkbox is selected or not + print("Checkbox is visible: ", checkbox.is_selected()) \ No newline at end of file diff --git a/Selenium/Activities/activity7.py b/Selenium/Activities/activity7.py new file mode 100644 index 0000000000..21ba58fec6 --- /dev/null +++ b/Selenium/Activities/activity7.py @@ -0,0 +1,20 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Navigate to the URL + driver.get("https://training-support.net/webelements/dynamic-controls") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the checkbox + textbox = driver.find_element(By.ID, "textInput") + # Verify if the checkbox is enabled or not + print("Textbox is enabled: ", textbox.is_enabled()) + # Click it again + driver.find_element(By.ID, "textInputButton").click() + # Verify again if the textbox is enabled or not + print("Textbox is enabled: ", textbox.is_enabled()) \ No newline at end of file diff --git a/Selenium/Activities/activity8.py b/Selenium/Activities/activity8.py new file mode 100644 index 0000000000..89d1f6a4c5 --- /dev/null +++ b/Selenium/Activities/activity8.py @@ -0,0 +1,34 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver import ActionChains +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the actions variable + actions = ActionChains(driver) + # Navigate to the URL + driver.get("https://training-support.net/webelements/mouse-events") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Find the elements that can be clicked + cargoLock = driver.find_element(By.XPATH, "//h1[text()='Cargo.lock']") + cargoToml = driver.find_element(By.XPATH, "//h1[text()='Cargo.toml']") + srcButton = driver.find_element(By.XPATH, "//h1[text()='src']") + targetButton = driver.find_element(By.XPATH, "//h1[text()='target']") + + # Perform left click on Cargo.lock and then on Cargo.toml + actions.click(cargoLock).pause(1).move_to_element(cargoToml).pause(5).click(cargoToml).perform() + # Print the front side text + actionMessage = driver.find_element(By.ID, "result").text + print(actionMessage) + + # Perform double click on src then right click on target + actions.double_click(srcButton).pause(3).pause(5).context_click(targetButton).pause(3).perform() + # and then open it + actions.click(driver.find_element(By.XPATH, ("//div[@id='menu']/div/ul/li[1]"))).pause(5).perform() + # Print the front side text + actionMessage = driver.find_element(By.ID, "result").text + print(actionMessage) \ No newline at end of file diff --git a/Selenium/Activities/activity9.py b/Selenium/Activities/activity9.py new file mode 100644 index 0000000000..d275077e8b --- /dev/null +++ b/Selenium/Activities/activity9.py @@ -0,0 +1,21 @@ +# Import webdriver from selenium +from selenium import webdriver +from selenium.webdriver import Keys, ActionChains +from selenium.webdriver.common.by import By + +# Start the Driver +with webdriver.Firefox() as driver: + # Declare the actions variable + actions = ActionChains(driver) + # Navigate to the URL + driver.get("https://training-support.net/webelements/keyboard-events") + + # Print the title of the page + print("Page title is: ", driver.title) + + # Press the key + actions.send_keys("This is coming from Selenium").send_keys(Keys.RETURN).perform() + + # Print the message from the page + pageText = driver.find_element(By.CSS_SELECTOR, "h1.mt-3").text + print(pageText) \ No newline at end of file From a60e4d7252f67faadb1bf13485bdbd5a641a7fa4 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:08:54 -0700 Subject: [PATCH 23/51] Add files via upload --- TestNG/Activities/Activity2.java | 64 +++++++++++++++++++++ TestNG/Activities/Activity3.java | 48 ++++++++++++++++ TestNG/Activities/Activity6.java | 51 +++++++++++++++++ TestNG/Activities/Activity9.java | 98 ++++++++++++++++++++++++++++++++ 4 files changed, 261 insertions(+) create mode 100644 TestNG/Activities/Activity2.java create mode 100644 TestNG/Activities/Activity3.java create mode 100644 TestNG/Activities/Activity6.java create mode 100644 TestNG/Activities/Activity9.java diff --git a/TestNG/Activities/Activity2.java b/TestNG/Activities/Activity2.java new file mode 100644 index 0000000000..3c4f6efc57 --- /dev/null +++ b/TestNG/Activities/Activity2.java @@ -0,0 +1,64 @@ +package activities; + +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertTrue; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.SkipException; +import org.testng.annotations.AfterTest; +import org.testng.annotations.BeforeTest; +import org.testng.annotations.Test; + +public class Activity2 { + WebDriver driver; + + @BeforeTest + public void beforeMethod() { + // Set up the Firefox driver + //WebDriverManager.firefox().setup(); + //Create a new instance of the Firefox driver + driver = new FirefoxDriver(); + + //Open the browser + driver.get("https://v1.training-support.net/selenium/target-practice"); + } + + @Test + public void testCase1() { + //This test case will pass + String title = driver.getTitle(); + System.out.println("Title is: " + title); + assertEquals(title, "Target Practice"); + } + + @Test + public void testCase2() { + //This test case will Fail + WebElement blackButton = driver.findElement(By.cssSelector("button.black")); + assertTrue(blackButton.isDisplayed()); + assertEquals(blackButton.getText(), "Black"); + } + + @Test(enabled = false) + public void testCase3() { + //This test will be skipped and not counted + String subHeading = driver.findElement(By.className("sub")).getText(); + assertTrue(subHeading.contains("Practice")); + } + + @Test + public void testCase4() { + //This test will be skipped and will be be shown as skipped + throw new SkipException("Skipping test case"); + } + + @AfterTest + public void afterMethod() { + //Close the browser + driver.close(); + } + +} diff --git a/TestNG/Activities/Activity3.java b/TestNG/Activities/Activity3.java new file mode 100644 index 0000000000..b6816e6368 --- /dev/null +++ b/TestNG/Activities/Activity3.java @@ -0,0 +1,48 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +public class Activity3 { + WebDriver driver; + + @BeforeClass + public void beforeClass() { + // Set up the Firefox driver + //WebDriverManager.firefox().setup(); + driver = new FirefoxDriver(); + + //Open browser + driver.get("https://v1.training-support.net/selenium/login-form"); + } + + @Test + public void loginTest() { + //Find the username and password fields + WebElement username = driver.findElement(By.id("username")); + WebElement password = driver.findElement(By.id("password")); + + //Enter credentials + username.sendKeys("admin"); + password.sendKeys("password"); + + //Click login + driver.findElement(By.xpath("//button[text()='Log in']")).click(); + + //Read login message + String loginMessage = driver.findElement(By.id("action-confirmation")).getText(); + Assert.assertEquals("Welcome Back, admin", loginMessage); + } + + @AfterClass + public void afterClass() { + //Close browser + driver.close(); + } +} diff --git a/TestNG/Activities/Activity6.java b/TestNG/Activities/Activity6.java new file mode 100644 index 0000000000..e0f1f40c57 --- /dev/null +++ b/TestNG/Activities/Activity6.java @@ -0,0 +1,51 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Parameters; +import org.testng.annotations.Test; +public class Activity6 { + WebDriver driver; + WebDriverWait wait; + + @BeforeClass + public void beforeClass() { + // Initialize the Firefox driver + driver = new FirefoxDriver(); + + //Open browser + driver.get("https://training-support.net/webelements/login-form"); + } + + @Test + @Parameters({"username", "password"}) + public void loginTestCase(String username, String password) { + //Find username and pasword fields + WebElement usernameField = driver.findElement(By.id("username")); + WebElement passwordField = driver.findElement(By.id("password")); + + //Enter values + usernameField.sendKeys(username); + passwordField.sendKeys(password); + + //Click Log in + driver.findElement(By.xpath("//button[text()='Submit']")).click(); + + //Assert Message + String loginMessage = driver.findElement(By.xpath("//h2")).getText(); + Assert.assertEquals(loginMessage, "Welcome Back, Admin!"); + } + + @AfterClass + public void afterClass() { + //Close browser + driver.close(); + } + +} diff --git a/TestNG/Activities/Activity9.java b/TestNG/Activities/Activity9.java new file mode 100644 index 0000000000..1ac3842267 --- /dev/null +++ b/TestNG/Activities/Activity9.java @@ -0,0 +1,98 @@ +package activities; + +import java.time.Duration; + +import org.openqa.selenium.Alert; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.Reporter; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.Test; + +public class activity9 { + + WebDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() { + + driver = new FirefoxDriver(); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + driver.get("https://training-support.net/webelements/alerts"); + + + } + + @BeforeMethod() + public void defaultContent() { + + driver.switchTo().defaultContent(); + + } + + + @Test(priority = 1) + public void simpleAlertTestCase() { + + driver.findElement(By.id("simple")).click(); + Reporter.log("Simple Alert opened |"); + Alert smplAlert = driver.switchTo().alert(); + Reporter.log(smplAlert.getText()); + + smplAlert.accept(); + + String msg = driver.findElement(By.id("result")).getText(); + Assert.assertEquals(msg, "You just accepted a simple alert!"); + + } + @Test(priority = 2) + public void confirmAlertTestCase() { + + driver.findElement(By.id("confirmation")).click(); + Reporter.log("Confirm Alert opened |"); + Alert cnfrmAlert = driver.switchTo().alert(); + Reporter.log(cnfrmAlert.getText()); + + cnfrmAlert.accept(); + + String msg = driver.findElement(By.id("result")).getText(); + Assert.assertEquals(msg, "You just accepted a confirmation alert!"); + + + } + + @Test(priority = 3) + public void promptAlertTestCase() { + + driver.findElement(By.id("prompt")).click(); + Reporter.log("Prompt Alert opened |"); + Alert promptAlert = driver.switchTo().alert(); + Reporter.log(promptAlert.getText()); + + promptAlert.sendKeys("Madhu"); + promptAlert.accept(); + + String msg = driver.findElement(By.id("result")).getText(); + Assert.assertEquals(msg, "You typed \"Madhu\" into the prompt!"); + + + } + + + @AfterClass + public void tearDown() { + + driver.quit(); + + } + + + +} From a9691ab80e86ed8e0bc5ac6417aad8a34a761932 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:11:14 -0700 Subject: [PATCH 24/51] Add files via upload --- Cucumber/Activities/Activity7.java | 33 ++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Cucumber/Activities/Activity7.java diff --git a/Cucumber/Activities/Activity7.java b/Cucumber/Activities/Activity7.java new file mode 100644 index 0000000000..5747e1c2be --- /dev/null +++ b/Cucumber/Activities/Activity7.java @@ -0,0 +1,33 @@ +package stepdefinitions; +import java.util.List; +import io.cucumber.datatable.DataTable; +import io.cucumber.java.en.Given; +import io.cucumber.java.en.Then; +import io.cucumber.java.en.When; +import org.openqa.selenium.By; + +public class Activity7 extends BaseClass { + + @Given("User is on the To-Do list page") + public void completeRequirement() { + driver.get("https://training-support.net/webelements/todo-list"); + System.out.println("Given completed"); + } + + @When("User adds the following tasks") + public void inputTasks(DataTable inputTasks) throws InterruptedException { + List tasks = inputTasks.asList(); + System.out.println(tasks); + + for(String task : tasks) { + driver.findElement(By.id("todo-input")).sendKeys(task); + driver.findElement(By.id("todo-add")).click(); + Thread.sleep(2000); + } + } + + @Then("they can see the task added to the list") + public void verifyResults() { + System.out.println("All tasks are present"); + } +} \ No newline at end of file From 789ff6e2de254afb295e9e6055b23c9d2e13c84c Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:15:35 -0700 Subject: [PATCH 25/51] Add files via upload --- API/Activities/Activity3.xml | 245 +++++++++++++++ API/Activities/Activity6.xml | 245 +++++++++++++++ API/Activities/CalculatorSOAP.xml | 291 ++++++++++++++++++ API/Activities/DataDriven-using-JDBC.xml | 26 ++ .../DataDrivenTest-External-source.xml | 25 ++ 5 files changed, 832 insertions(+) create mode 100644 API/Activities/Activity3.xml create mode 100644 API/Activities/Activity6.xml create mode 100644 API/Activities/CalculatorSOAP.xml create mode 100644 API/Activities/DataDriven-using-JDBC.xml create mode 100644 API/Activities/DataDrivenTest-External-source.xml diff --git a/API/Activities/Activity3.xml b/API/Activities/Activity3.xml new file mode 100644 index 0000000000..5537ea1fc6 --- /dev/null +++ b/API/Activities/Activity3.xml @@ -0,0 +1,245 @@ + + + + + + + + http://ipwhois.app + + + + + + + + + IP + IP + TEMPLATE + IP + + + + + + application/json; charset=utf-8 + 200 + + ns:Response + + + + <xml-fragment/> + + http://ipwhois.app + + http://ipwhois.app/json/IP + + No Authorization + No Authorization + + + + + + + IP + + + + + + + + SEQUENTIAL + + + + + + + + 5 + 1 + 0 + COMP + IP + 0 + false + IPv4 + + + + false + false + IP + true + false + + + + + + + + <xml-fragment/> + + http://ipwhois.app + + http://ipwhois.app/json/230.230.54.126 + + + + 200 + + + + + 200 + + + + No Authorization + No Authorization + + + + + + + IP + + + + + + + + + cityTransfer + Response + GET Request + $['city'] + city_name + Data Sink + + JSONPATH + true + + + latTransfer + Response + GET Request + $['latitude'] + latitude + Data Sink + JSONPATH + true + + + longTransfer + Response + GET Request + $['longitude'] + longitude + Data Sink + JSONPATH + true + + + + + + + + + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + FSTConnection + INSERT INTO coordinates VALUES(?, ?, ?); + false + + + + + city_name + Washington + + + latitude + 38.9071923 + + + longitude + -77.0368707 + + + + + + + + Data Source + GET Request + true + + + + + + + + + + + + + + FSTConnection + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + + + + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + diff --git a/API/Activities/Activity6.xml b/API/Activities/Activity6.xml new file mode 100644 index 0000000000..5537ea1fc6 --- /dev/null +++ b/API/Activities/Activity6.xml @@ -0,0 +1,245 @@ + + + + + + + + http://ipwhois.app + + + + + + + + + IP + IP + TEMPLATE + IP + + + + + + application/json; charset=utf-8 + 200 + + ns:Response + + + + <xml-fragment/> + + http://ipwhois.app + + http://ipwhois.app/json/IP + + No Authorization + No Authorization + + + + + + + IP + + + + + + + + SEQUENTIAL + + + + + + + + 5 + 1 + 0 + COMP + IP + 0 + false + IPv4 + + + + false + false + IP + true + false + + + + + + + + <xml-fragment/> + + http://ipwhois.app + + http://ipwhois.app/json/230.230.54.126 + + + + 200 + + + + + 200 + + + + No Authorization + No Authorization + + + + + + + IP + + + + + + + + + cityTransfer + Response + GET Request + $['city'] + city_name + Data Sink + + JSONPATH + true + + + latTransfer + Response + GET Request + $['latitude'] + latitude + Data Sink + JSONPATH + true + + + longTransfer + Response + GET Request + $['longitude'] + longitude + Data Sink + JSONPATH + true + + + + + + + + + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + FSTConnection + INSERT INTO coordinates VALUES(?, ?, ?); + false + + + + + city_name + Washington + + + latitude + 38.9071923 + + + longitude + -77.0368707 + + + + + + + + Data Source + GET Request + true + + + + + + + + + + + + + + FSTConnection + com.mysql.jdbc.Driver + jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE + 6Y6NowPybq + + + + + + + + + + + + // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// } + + + // Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() + + + + diff --git a/API/Activities/CalculatorSOAP.xml b/API/Activities/CalculatorSOAP.xml new file mode 100644 index 0000000000..f26c5aad72 --- /dev/null +++ b/API/Activities/CalculatorSOAP.xml @@ -0,0 +1,291 @@ + +http://www.dneonline.com/calculator.asmx?wsdl + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Adds two integers. This is a test WebService. ©DNE Online + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]>http://schemas.xmlsoap.org/wsdl/http://www.dneonline.com/calculator.asmxUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationSEQUENTIALCalculatorSoap12Add<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + 25\r + 5\r + \r + \r +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:AddResult30falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Divide<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + 20\r + 2\r + \r + \r +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:DivideResult10falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Multiply<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx + + + + 10 + 2 + + +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:MultiplyResult20falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Subtract<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx + + + + 10 + 2 + + +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:SubtractResult8falsefalsefalseNo AuthorizationNo Authorization0aee0df6-d8ef-4dea-8904-a9abb0007bedNONE52e98521-e8ce-4191-b0ec-f59cf9d969b3NONE30970bb8-502b-4b91-9542-18b3ce30f22aNONE25003ab1-7200-4c65-abfe-6f82e6c9102aNONE// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// }// Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() \ No newline at end of file diff --git a/API/Activities/DataDriven-using-JDBC.xml b/API/Activities/DataDriven-using-JDBC.xml new file mode 100644 index 0000000000..6fca36565f --- /dev/null +++ b/API/Activities/DataDriven-using-JDBC.xml @@ -0,0 +1,26 @@ + +http://ipwhois.appIPIPTEMPLATEIPapplication/json; charset=utf-8200json:Responsehttp://ipwhois.appIPSEQUENTIALtruetruefalsetruetrue<xml-fragment/>com.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybqFST ConnectionSelect * FROM petData;falsetruetruepetIDpetNamepetStatustruefalse101-1COMPIP0falseIPv4falsefalseIPtruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200No AuthorizationNo AuthorizationIPcityTransferResponse$['city']city_nameData SinkJSONPATHtruelatitudeResponseGet Request$['latitude']latitudeData SinkJSONPATHtruelongitudeResponseGet Request$['longitude']longitudeData SinkJSONPATHtruecom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybqFST Connection( Default environment )insert into coordinates(city_name,latitude,longitude) +values (?,?,?);falsecity_nameQuitolatitude-0.1806532longitude-78.4678382Data SourceGet RequesttrueFST Connectioncom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybq// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// }// Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() \ No newline at end of file diff --git a/API/Activities/DataDrivenTest-External-source.xml b/API/Activities/DataDrivenTest-External-source.xml new file mode 100644 index 0000000000..94c997451d --- /dev/null +++ b/API/Activities/DataDrivenTest-External-source.xml @@ -0,0 +1,25 @@ + +http://ipwhois.appIPIPTEMPLATEIPapplication/json; charset=utf-8200json:Responsehttp://ipwhois.appNo AuthorizationNo AuthorizationIPSEQUENTIALC:/Users/0019TE744/Downloads/FST_API/TextFile.txt,trueCp1252falsetruetrueIPaddresstruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200$['country']"India"falsefalsefalseNo AuthorizationNo AuthorizationIPDataSourceRequest 1trueC:/Users/0019TE744/Downloads/FST_API/Ips_Excel.xlsxA2falsefalsetruetrueIP Addresstruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200$['country']"India"falsefalsefalseNo AuthorizationNo AuthorizationIPData SourceRequest 1trueFST_Connectioncom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybq// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// }// Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() \ No newline at end of file From 6b4bf8220ed58262ea5376f9dcc4aff1f1145606 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:17:28 -0700 Subject: [PATCH 26/51] Add files via upload --- Appium/Activities/Activity5.java | 86 ++++++++++++++++++++++++++++++++ Appium/Activities/Activity7.java | 83 ++++++++++++++++++++++++++++++ 2 files changed, 169 insertions(+) create mode 100644 Appium/Activities/Activity5.java create mode 100644 Appium/Activities/Activity7.java diff --git a/Appium/Activities/Activity5.java b/Appium/Activities/Activity5.java new file mode 100644 index 0000000000..473772826d --- /dev/null +++ b/Appium/Activities/Activity5.java @@ -0,0 +1,86 @@ +package activities; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; + +import io.appium.java_client.android.nativekey.AndroidKey; + +import io.appium.java_client.android.nativekey.KeyEvent; +import io.appium.java_client.android.nativekey.PressesKey; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity5 { + + AppiumDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setup() throws MalformedURLException, URISyntaxException { + + UiAutomator2Options options = new UiAutomator2Options() + .setAutomationName("UiAutomator2") + .setPlatformName("android") + .setAppPackage("com.google.android.apps.messaging") + .setAppActivity(".ui.ConversationListActivity") + .noReset(); + + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + //Initialize driver + driver = new AndroidDriver(serverURL, options); + + wait = new WebDriverWait(driver,Duration.ofSeconds(10)); + } + + @Test + public void sendMessage() { + + driver.findElement(AppiumBy.id("com.google.android.apps.messaging:id/start_chat_fab")).click(); + + + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.TextView[@text=\"Type names, phone numbers, or emails\"]"))); + // Find the element to add recipient + + driver.findElement(AppiumBy.className("android.widget.TextView")).sendKeys("18282832912"); + + // Press ENTER + + ((PressesKey) driver).pressKey(new KeyEvent(AndroidKey.ENTER)); + // Wait for textbox to appear + + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.id("compose_message_text"))); + + // Enter text to send + + driver.findElement(AppiumBy.id("compose_message_text")).sendKeys("Hello from Appium"); + + // Press Send + + driver.findElement(AppiumBy.accessibilityId("Send SMS")).click(); + // Assertion + + String messageTextSent = driver.findElement(AppiumBy.id("message_text")).getText(); + + Assert.assertEquals(messageTextSent, "Hello from Appium"); + + } + + @AfterClass + public void closure() { + + } +} diff --git a/Appium/Activities/Activity7.java b/Appium/Activities/Activity7.java new file mode 100644 index 0000000000..2eb9e1ec10 --- /dev/null +++ b/Appium/Activities/Activity7.java @@ -0,0 +1,83 @@ +package activities; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; +import java.util.List; + +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity7 { + // Driver Declaration + AndroidDriver driver; + WebDriverWait wait; + + // Set up method + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.chrome"); + options.setAppActivity("com.google.android.apps.chrome.Main"); + options.noReset(); + + // Server Address + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver Initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + // Open the page in Chrome + driver.get("https://training-support.net/webelements/lazy-loading"); + } + + // Test method + @Test + public void uiScrollableTest() { + // Wait for page to load + wait.until(ExpectedConditions.visibilityOfElementLocated(AppiumBy.className("android.widget.Image"))); + // UiScrollable object string + String UiScrollable = "UiScrollable(UiSelector().scrollable(true))"; + + // Find all the image elements on the page + List imageElements = driver.findElements(AppiumBy.className("android.widget.Image")); + // Print the number of images + System.out.println("Before scroll: " + imageElements.size()); + + // Scroll to required element + String imageText = driver.findElement(AppiumBy + .androidUIAutomator(UiScrollable + ".scrollForward(25).getChildByText(className(\"android.widget.Image\"), \"Helen\")")) + .getText(); + System.out.println("Found " + imageText + "!"); + + // Get image elements after scroll + imageElements = driver.findElements(AppiumBy.className("android.widget.Image")); + // Print the number of images after scroll + System.out.println("After scroll: " + imageElements.size()); + + // Assertions + Assert.assertEquals(imageElements.size(), 3); + } + + // Tear down method + @AfterClass + public void tearDown() { + // Close the app + driver.quit(); + } +} From 0f062779dc76e096d7bba1176642519b2895f9cd Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 01:21:56 -0700 Subject: [PATCH 27/51] Add files via upload --- Git/Activities/GitClone.png | Bin 0 -> 81214 bytes Git/Activities/GitPush.png | Bin 0 -> 110445 bytes Git/Activities/GithubSSHkeys.png | Bin 0 -> 39053 bytes Git/Activities/sshkeys.png | Bin 0 -> 50437 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 Git/Activities/GitClone.png create mode 100644 Git/Activities/GitPush.png create mode 100644 Git/Activities/GithubSSHkeys.png create mode 100644 Git/Activities/sshkeys.png diff --git a/Git/Activities/GitClone.png b/Git/Activities/GitClone.png new file mode 100644 index 0000000000000000000000000000000000000000..e1fc28f7c71b950566613fe1da343b9a9d055cc4 GIT binary patch literal 81214 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

& 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‹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 literal 0 HcmV?d00001 diff --git a/Git/Activities/GitPush.png b/Git/Activities/GitPush.png new file mode 100644 index 0000000000000000000000000000000000000000..ea83ca40b935703f1f8fbe5a2532f134223552ea GIT binary patch literal 110445 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

    #r4glYXka zE}zW4{bi@4@dn;S_q>NA{Ry$+RiLPkq-OdWM9Ezw?mL@H*Eh`kj?6vXANeVdo5_fV z0ndlR-R9E4d)ghO;^hzONrR9^4)BGc?+vo>CohmFx@;84))u0tYr!F*IDem$p(B)D zRDS$sq*I>xJ5@6oxkeS)^}2&s#`m)jZ)UNOjfn8TF8HJMpot1mBM zibbcbwWQRi^!m`Y++wmosy6oc2%YQHEF%?K`%xqxsM}u_c!8C2&%1%lk@)PzPZ1Gu zNhAGDe69(;X69EYzNo??L65dOanYWjr%>YcM<+7{Cgu=WbJ~7j0D{?Stt6-JJQtOrB1@rSzp%Zq?4r4#lJ8e3Ce^-+ZOY$m8 z`*MDabvwojiQ2=musxu$BP2MuX|}n2d3w_6H|&Qvd>9y;&)8ABlS{G_Px^*GKw8iH zvGj)En8tI~r%j{SOZBT;Dna}Xe;wE3%CsqRFnuyPGi-fiL-y8+CF{qU5B-!snkvak zIq-gh$U(!#GQl;{ntYSHVr6(g1_IhrJiJ#Ul#{H23}mYt&A10BP48N8ZLy-5>N}<1 z9v;`CGn2}1`B*7{%-cLas3^A(-9C2XC!PTHq^&BQ4q-MdZRuGZBcG|i4RY&Lk(|*9 zs+$1{Um$+d-3N6_Z)p1cJ#zP72OxIUtmQoC(Hq|ocQ9t>ei5KiOaXe$=kunZ9E9*8 zp$PmZjvgv^g!4NGBt=jh3}E~shjtQ`{^gbgr#x7bEAY`qQ*C_Jnh0M7yw|qvK^&nJ zkWwjW^ZKq698R%I6dqM4-p0atIEyeqAiw-=;DbM39cVgijXVyiVi%_{n1ljVL4CU# zI(95-;p)v;gyrr}5I;g`79)5t$#@bw3X%&SiE%VVY`cQtp$e|sH^5aHK8JBy9dj3= zPV+WtQq5EmAA2GO1#ufXz0MK$P4fVWA8bH5nI8!{nucR?+z!a(k3OE2I4Rp&CJhdi zydqNHpxnRfa5{0gT2#@KwbOGy)AQ!?Pia+L0C3uOZWsov&otf-GV*PV*|@8rdza+^ zZv^y^HW;_9Yy%s)4G?vvJ5iT1Igsz0_j-SH^7W8KaWZo51z7uveuD#Hsr_ zYPyGVO>B7!@Z72(hvvwU+V~+M@jyHck^IcWC&ZHk%=_{&DLhDb-9`6rXLp+Uf3^p} z*=1pZW;Yn4stwvt`9m2tg$1{~xNzBSU+h_0;hIMs2;IbblrRv%W&-HJILZt$8%foz zr=@PVAH$^<58||cy!S7B44@(4U4r0HDfc-68P>~;GDD{TFbkdOYrb-eE@rhesux;c zbuU|jy*auqQREYFR~dJoA+#$t?1B&a7!muR=V zi@3Cl>KE!|=zFF+0-)f@Ww4G!}Dx z9U=T51;6R4-{kGHsa>#0Je6L|wd(Iw28nc#Eg686J7|OJ)2Zzr$v|P*0;Rq~Upi$p zhf4&&)<20f@Y8<-@45nLh5uFcI}w6@2W{C&1?Co=>a3SaE|uJz!?b|dYYbdoTsn$9 z+QFtP+C4o< zQA05GX^0cVx0`Po3VeAc@-?zoOh$N1F3|j(Wn>gGl+_9jPEk zhc;pcEQ@j{WrR~6mvH_`SW&^7OivQYaRTx!M|&>!Ta}+WTOV=+7nhj%f|d)RrdqG? z>eYRnS*UF41f2fJ6GfVqpdFi)(XwW+tyv#*Z!QjWim&ghGqXLQET$@|75x)HwZhDm z@Y(8%52*gHxSut#huYDmF*7J%G|rDG-z@&=Bxfm7d&`)vC_gb%WYhrbR)n)R-bc=E zS_Rr2X3|X$zb-149$#C$*hs)lobPj}&m$Mt>IRsYPX0FYPZu4CvGRMjxj>TK`0cp zg1v}k4<@or@m402@iCqbJbS=<_shCcqA+3zf{mwzn6T9k5=rGiD*#NbUraj^MM^s- zV6>No8}Mdd_*_h{>%8b~k8u%X-_}C_-v_5Q7{^5o5>R9j)1pT2tINtm6I&%0P8o81 zwN}eFAQ2CZl0-4FnKxwS%-gB`_J0e z#xi@0*z_jZH&Acyjf@}niw8w0YlxGAf>&qMf8)@NQx-Is*_8-~DL_Mqhd$G*QkpUw z{bFx^gC!ZbshjqLc9^!$lARCkDX`6e8T`-W_azs+I;@17a-Fnd;X& zb>++YAy5D??y?!gDzC8NcdJ|FZ{AKkK<(3j!FQNaSVbzMm>2R)p>Op7NVf5RzTN-@6t*|EyKZG3Vg#tjdOt0Rqc!#hB* z$|o(bytiJuQ$DIN$3iG)mR&rojr>d0 za=B47eL}WC(J<0k61?bZK)B&hM=TU;J?MY=jAxc~9LNKpv69^H24(|p`l4rGhprM? zNicBcyhm$PpeDrl4Pg^#KRY1n_hN?T*AcJsx5j5+8ph|QaNODtE;>KbQY!bR5yG;1 zy*eO}@()FUo7r|{R59Bp#K&8PN=V;xxScpYfj=a&;(iaZN%W;{01*x`W(Q z%(KCE#?vIO9{yAJkpQ|uMFr^Nj)7ygx(*cNy!zpn0zYxKg*&^I;O&g<#Y#12c0PJK z;sQD>%^WQwK9e`}D2jO#bX|+;p9QM5LRrla`t4yCsW$2JN|633JYALZ1b(psmE%I) z(O#8ph+*$iu(`X+%l;njJxFzpdL?-M&iCe?6@<5gV;vUXkSR40lQL7U|92gFczV6; zU-LzbA)jAneR8d}w&K?5I(zL*n!zW9s z{E)jvmY@Y+pPGV@BH@|j5bFhER(xeD<&12fJGll`W8y!XQ226{cw$%k>9r$_o8$4Si6fq1J+uCaQWV=7bo1~DkaB>#rz9x0@))# z<`L2@)!i-r70`rSIr!MePqf#uxE@^L3;lF@A0GEg_Xa8?69`YgX`o9iWJQU-d)6>1 z!0#eicVl}}!tL3*a8%8jfcFF6mYehU!*F+FBmXo#4TO&Fyxo8@71urdPE3K~(!Tr3 z?D*{T1YqckR@*w)`-oMG(NB{=@r@**G^?(bPMr`9RR6+w(T9Bwez%QNYW*%l@AXG`+>BjQqtn_3~He!bFYjoJY3KBH+purU! z!L(Xvtbk=X_w}W0Y}W`UHf$ike-Hzwo`0A-wTXTRuo6LCy6)MbuyNH$&AXv%hZ9&XWuYq#*tqp-*+a; z>PBQMJszCNBlO7Ka4RR`BC0E^Lp0TDwOP%$D2s%X>@lmwC@aQ0Otz2s6+PT}UV#$X zMRz*Vr|U`GQF+orxxF*^0)IG!RM%8aUD`i}+GJogKrbC;2f2qIlb8&*_INKxRsOvg zKt8yX=MH*@&!cU+t$>5)B8p0w1=)YrlX9C7Xf9s^9#$)%@qhP6P&y#D^5&~mC<)3d4L;{a3>+p#p!m? zmQINQLsDx{=0Xl-)6VB{57*B}ZP}?vWXXFjSRFFsq*>X+_~4a@75s+2hUo@~S{ZT9 zS0gj?g>0u3GRK5%w7Bx}2ZQhtD6^rG^fIN>rKrkSfx{ILmJ`JEAmL~|%(K`>`f%Pu zB%F152lRl^+e>m_=uPoO+`?GJfi0huwv6R_rBt`_PM5F1235Uq0rdORdqCi*=y9}Y zzz!@$!AI;--7=3w6ir= zC)>l`P_Eu$Fz7h1ZF4qci544oaxjRO@3mSdyl!>Q{p@5gzEzI*(!ibL$pJM%oPIgl z-eEEKvkt>uQD$-;{BdfpR5#;pEUldf@gZo@oFkRL>NlM=33IF3@5?W3LS#Rn&s%It zuXij~e7CHov8a~N3@i@95TF^XJ74Q}{>WHl{8TviVrRs`X=lazTT9~v5-nW;ZH*~Ncy%pz4E--U zr9vXqLB&?Xa_TWUwPwL^3fL|jo8xa=$-7oww_}_fE&uw`c_oAT&T|VKh>aNHBzSr| z2TF;kz^P!}0&gmF^$mk70hUQ!b|Rk{3Sfu;*$fhKf;Kvqok@m7)xp&K5kO&$CZyD>p)rd%TUYVVWrA5N7Bqed*Sk%*grhmd{ zX2ha=!r*&E#?MZS>#zUB;RVxvs{Cm;p`@m-FU6^}}}GDX%OG_E(2=wR9Hq-?ObyW%bbU8ZHP zudpciJ$NXL8jj~p;Qt$BUX97%@r>#B9GRea@$p%;nq)71wt0Hq|LG;etj z55zlcfEk3-|CD}X*6|uw1u_Tv#o=yE0~Ov3uW2I9e^tMF|78bwQl&*^_|?4+{*xJL z;Zqc{9ksxj{VCH?x60R02VAq%kS_Iq>Vkf-{hzv^hS8T>P#2U@>fg-XStb)oXE|_g zK{+ee;QY;d2d{V5bG}Y4H;%MmP_dks$MiANYJYm1+UuD}U=3GsfI6Li139(am3b@r zfzHhmC1_dOAAoXPQ;UFOYF^mL8}KAW>^~T0nktED1qYpp$grl}X<8}X)!vuL6${y< zA~xv^zCQmzzr+3${av_0h9NH}<=q*E%r!l@I0zOC5YgmHv;uhs+w|!-ZHm7{%mTh- zPt^{~jYU9wNf_zF?zOo0V2;3DQKRA?mC*DG%heUrj8uKtU99`oLSH|FcWoNiH|D^z zAr6W^Z$c$}BBRNmkS8zMHsX|AYD;xjzB7MAtw1vW7J9^0f92km`1!w02AU!>>HY!Ucz=<_pS`m4O$kob+ z!bfbVLb&*!FAw+47m(7sNvGF`pvy-oEouh zS}y~BDD1=ZD;@s+d``O6sF`y;Gf2AY61a*#{mR11^7NQy3M2XVi77C?&Zr9NSEQMY zeqz?9>h%}FuO{dk6*xkP!Pw#2^X-zg1V=Oy9&TWc1ErecO^oo1r9stwjkp}g+bkhB z`Q_ohcUqW|9${sZ2X=waa0mb~hEYR5>Y7IHv2PZ5>q{DDXqBe`QvdD?QkN1$(&)<; z1w}?LAXSdOec1@8vbN>oM!$TY`|!Owgj@Nx1^bj#EGv4BGl*as&=GevlG){4PUBWVhGMD>MUm%xwvhCEn<~y2iQtFwLe+V1rG4bXH6L*_Q z?-5#>##KD1<2xAT7P@TGt#XS<0(t9-k^9T88aLE+Mxl>`FHgb^Ai{{;m-jN->fom7 z7NYuBMsQRxU$9W{IU(C20<{Z5q{fY!0L@Q9!b%g9#hX@tY)~kWO$RJ*xXtR^{lYqt zhTi(3;mz0jln^}cY!A4`W}0FJuYgX(sgYdHRaJuF;g3c!y76W;^KGBW+YewgZwDr+ zU31ByI>>S3)MWIUeF_+hrmeE?U79E%gA2ALuRmi)?W-88poAHHDFP!inXLKLHRNPn zu*|iek&GxV1T#V(l6T4sLs>#WRbO7A{8NP`TV5P@gAK3YpEsG^%9YssVoBhJyfcLy~&(m!j$8S}{- zUvA&~;FlwghxVFFfa5G-Lf$ui-;6&nsW1(qK?Y=G)wjJCT?ToK zr_UE(Vk&J)p7SE*;cv(r7lpNMwsPiusm-IsEOdz6eEj!e0OWkY>n3Jq_$4?eoYeY% z(e>W(RR90~e6qWg z^YnUs-tW)v^85Vr`pZk_JUyS!$9>#x*Bg)tRLsG&kCmg(k?*NDQ8BW|eBm=;9NCe- zaxspY%9x5Gjw4P{${el>zky+xmgkzgMGfzO-^@san&9SVGgF-Xeh260X29c8?e*#9 z{89xg=KCe-!Xlx$A3J9kDt4x)IMPCej&A0{XtK+R1Z@QdC$z6$vX{q#ZgVw+z)Cus zH;Sd=vQ@Bij||bmoYyy>AsJ0Q=2o~I2jWbmFwG^z>%)0E1(fHp<-eCJ4Av7NA1jIk zlQyV#V`Ag#W2TK}N|pd+y&$$N?+w0X086CbJ_zaR+FzjEFy@Y8u}Hp#R@{!GWs4Mj ziC4p5?7GDh!}*oK7;hU{Ve$S2R8iSDto{V{#x>%N`1$h+w<3#e$kMZU1>^)_zaDnF zAi8q0yy`ed*c_qSi%JVjLD=r7oG&Hc@v+jbk!Eb*B{FJH?WXeG*Hgi~gB_zsaQhOk z>riR^{2b9rd*w?I-(X2(=e=G{0*G{lcHax_EhVUI9{WN0s zaf0lhX7U&<*%J`}Hqy0qJSxon_U=bi+PfjU?Ulau{6+}56I_$i>Twe==~Kd>^pEA7 zP+0p7c_>xB#W= zP{3XY|H5LyXVOJ}pd|;pke*>6@v;9Jj9GBFD7g0u%1r?JNQK_sU-~7F;``EUFRxB! zmE7%AUsmn?MdSdaOw%(K#uu>nnoCSXSTX@UzERm4&tras6X8YsL-+! z#}hSQ?(r-z8N%XeSq|;qZWUOgxoaE z?S}bkz@XSaJ0A|&FvhspDxKFc-IS+b)8Om^dWDo%$$ES`<_(ho0c8dXmwjSETRPNx zi1l}_zv0Z7)ewEvBBlKE-UXmD zRvjOJ1(kUEnzqHVG34mKBT1-(!4^PCh`h&Mc{ewAdIH73TY6kjgjs+x<$N z?pRk*DP;gjuIBtfgFt38y5gU_efR#Us(*~@-iZE&nbd>19`4dAPZ~bsBxsk!&Y#he zxKs7;6__=7AtiTU)t@!*HE91a1?wdaSt)vWBP`*RSq26F0z}5buQsKB_eQotozr@F z8f<9yd?TKh@5b+H(s7#280?0NEruMtf&Oz{UI$3Q`2$Bm`!T*9)s}5CR2pT(4v4l< zII)`4cZZ;7e?YhE=0Rh{R(IIhq^2qRtFXJ^bNnSI+Giv}%+jS&l#j#l<*@zhs)p ztYS!d?d_%ya$QRHY`raw`yB$wCcvtgTu<2Ez;c`@g%ppv?C1||Ld4ig=5y+PVsC6D ziG1mD1*)9^nV}U0^FcY@lOvsKGVYcP?*E?2Pmc2XoJz477Nm;}T}+SmN*4G_j5{ z?i}8`H2btQQKK^ZAa=YKxz0s%!j0)@cUfj3fKAMNrRl}hlc!paw$T#mgw-&Qs>}h>t zt}oaoE*A|<$@;bfzq6vuj0I)i>S<3re%(?;EJm1r0iR?vl1IP|Se`77d{5%=7ogni zZV>#!%h*KxFd)el1Rq8bzdMW(v-hi5Mo1jA;Y4R6Ky+3GgL!_q-y^YUidN&?yWuFN zZ80dvHZaoU<8#DAQ?t~T=f@+F=zpfIzYz? zF`0}#+r@4~$u`#gg3+%G9v@xh-*B_THl4j;mo`F}cPLSVs>9V51@kRNEzel!LoX}> z62Y5~B|tP5SjRj&9#b-}kJ%$-O zTgzNm4tLDvjBmHrCeq0hS8jloQ6#~#hEHV8Tzs25b-f3(v!XAX_b*tEgt|I~)rf<> zOUp48MymG(Y$7e$?sjjnjS^pf%Jv;!&v=374YDaBVrZi3G|u=cg;O zv&XeSc3n8hcp6&no1=9aCVM*PMMfKhlHfVKz(l7J%;ps(s#c31%BF+h7bd`*O}~yO zM_J@yJNzTuDReW+80^d%LhB;pcm4#>FOkh=pR0IW>o8F73n__BliYo_{_e5{UDMf~ z!%%}uLnnolNUk7;7s0gtXDh=#nx`hZ4z&X!JRe#GYiMM}1cu5?wUBF#gnG4k*6#w6 zoOQyb=1y?!T~~DZ?*m-rKwI>q=s7!@^NW^3)rMU1fcDSx^qabd%PV56BpC z>nDRW?%jD1D!Ay{DgONxKB=8-Hqy3;d7UyarQl6MfzDEkxVgzK^Fi_IUFNuZoCS{a zwlA4|@)l%^gVP9C`$x&F7L^s;XRodPu50OS^^G#XMv2*a_6m3G{Jml;?zQ{3sojrz z>}UTF_IFCy9DMt7&t5*Wvo2rOB5Cex>-gfFOsJ!m>-V2Zwu)OT)~CjY-`v{5LZ5P*TkFftgKytDFQ);GI8bEQ*1nOTepao#`uhhY7BP7A%Or z7w4gnB0#A<+QKW6XAZ<>ck|r^wfGqOyCxW%*ur-5e*F%7B$5BMffgX*9M>ut;s-@m zjf*pghbN)0zNAb5nwSSMt`bChc>41eN6K~|k6<@^R-^Wvkjuz?Lg8KP^J&w5?mvo* zoFbryzMqxmS;Ty#d3z<##-bR$U8SE=7FqDRA)=Z++$OYGrUQ=`6C)*_&97TfR@(W= zSXKOZb8_5blsG7{abd2$x^#T$Q)|=H%o3Jo#%SdmC$F8;INWf>whnPt5+`zE_kY|+@ZXQa2+|7Qz>vMhf{XwWG3OzP5-(#pk* zoFKL9Ay?LoH2OydMYfF>vZi3V$n=}h@dasV*vRk11~&pK0v38!=_!VOuLyRb3=FR- z&;}kE-fP=2ZuG2|zNkRl!TodLiSbvl)(=PZFhXyytOi(YJfh4*Q^uQbQ-(aRH8=2k zgy6kouQi>^u6lNn@8}n_>Yqghh43{{yGViCW}*mZIC|;F$Rp724)N%j z-j>f?J}7cMm8gOYpm%F*y7|aBBHG(|;qiBDHGKAKa~)Cxx#cE32N|d1+fcmy+bU!5sl~9Iz!bmn}Cqk-h>EY zudvfa7%6ndZQUj(fpy|r)szf)(do2X(<x$?_7%=+YnD@(3RaW* zhPg^{x!znYhrt>uiM;tj$xrGNQm&{ zMr~n5?u=G6H_B*?8`q{;N4ws$RFFu~kV!`wKOg>Z_RD|hbJue%E4DW;jG;b}G5!Pc z<~SbOZdUMUJMm?J`U|StPa9G$b=Tki%#qnYfnY5EjV@z)Vc9f4Q0mBw3sAUYG-xXw zuMliEAARMsoVdw0x5AXeC&7~|RXF9}Iv$x?<`HuE z`w_d3JNEOu?3u~S+Sl?>q+qc0f48dtE#v#&Zu%GK#6+!Rq5R!9t9&^Cc0Ig*5a~Wx< zMGpUi1{H!)cUj`P7Dj(ygl2^t*0frCtdVKIK7$ModvZeH!9k2wa>ANnKS0D~dHE)= zbdUZburz?qbD$v61PD|RO<32tzuEd|O4{GFP5_YAH7x|B|B=Hv+8Yv+ znF6a|V0b_;-$xz@W!hJE4B6swFeczF51#kVzuTvtsags7x+A6clTgS%5w99dn=kCR zpy=eVZY^F&Zvo@YU>sc22f#HGm~qfh2&g`tJRNj@qet?r9t5R73X?b}+VTMEt3{pL z00s@TKpYAT5PW<^=6@{HvGhG?^AEGymlJ~$C2#P)gJHF4R>h&*L5*}M-<4bO){jL0 zvU_2y+j$N^T|cQIGgUxJ!)M1uo>2oCygo|9;Y-Q)64~GJo}-Nplp$m=YH+WnwJ3KX z7-Vwo6a1EN8Kv``qF)8R4Hh+z?1|X$#%`|F`s&jq2OLG?o3%i(6Qo`dj>ZD2KsVyFPO6U*7DI9N)x{QRi zVc_K?#rOONTEpJS?1Q1@1I4L{Ivo006)-5Pd!;XsXO)r zNO~Fr9z&wBZb;R91fpae&e)h&Bh61hyE85*+H(PHYaG>OGN{?5fuB(J=*NH^v)ZYy zmUKK21M=h2VE_$Qdix#0c5|>B_Fsr+UzY0+k5ne0>g1S~J;M$_`GwJ8^kRG{Fyb&8 zyC&i81z9yWbP|$koN_;^L^5#*Gm$w>{eu!pTwr9gUK9uFysu-c5S*vixg|UkwMeTz z=j6S53?&YY)qUI@R4-|0@g_anBtQG&a_V#3>0`ITziTGbFrgInn|}A#^XXvwgJN&k zzkd~1UDrR{8KF+xVh8J>$`##+^P_8`?@8!yWT*X zU{p)ScXlm16~2Jr2%{fFp}elp9T1p>p|LZJ+q-s}Ns)ymci6E&NI&{fB}~M2z<>wB zYkIjGaImD!tDmkYIXTqL62y{1YeIYG9b(2(8l!q_fS|p+iJxKRlON858lVuspa6MR zr7BI(eHP^1kFSfP^30~87*1obO#_n;zs3bb1JJe=R@EAqA1P*QJiFn$}}tce^O3(r5wT`V}ayP`ramDNNmemC9*4U3e` zSopIw7YhJtN!#gqV~j1%l6ckb*&#NhT`|H_zi=E$Kgt+YxbTz}SzpaLyhK6@m<=k^>aI+|Y0O*&{T@!5+;QuAQ?SRJ5XP!)hlu2iAhW*d&izyIfSf824SCi5Y` zq4r{NWxpC^^CBgm|6^O2{zRF8fDM(aty=(P(+r|XNz3algQ%J$$O%o&YF4dH?U$_? z7Zk7P*N(W`Yc4-b*y^`aUe*T`I(C|qP@3M+aT?z{1FSY*+>W*knt>9L{4$$~46+A) z?NLP$U12u~ivaYJp~1ZIU1&~K)wKbXQ#B%>v}6JALu~mn<<8~E+p9$hBJ&4bY>@_Z z;IG5o6jQpfbXG-AI=HEQ9W82B{UD4dEE|KiS2F|vAmLc@rdIDZ$3)@vc5IOtcWdAm zP9JQq2?tn;BSVeNU$2ACrQyCTI!W}!BW{ps2W`Y;xa_i-M5!hWknHEpUL0Hh&58TD zu=zc(&39W3&XmDQJ+f6%mct$;+obcnc?iAJLu7a(jMD#G0|J>S02^FrmTYAeg?;Ml z+})9YZ#51KtTgT5*qrv!5%N^0R2qRw+P z*v*&D=EdE)f3s=EBsHqFBa6tU1Th+Y&d;6^HMNn3TB{95;3n(f+FXe$tWY)cPT@x? z6mia`_r^lyk@n1*DU3!Y2&J!C3%(}iLT`IhneE)C+Q;aFa3F#SYXbxWu{J_vxol#$YzxA6$ET@*{hvzHiCvh)5&5>vV9X&cs(=npXDVtUo zNkfZQ-GUW>+rF!kCsrEa4$nLQ<{JKWu2W;FJcySiT{W8>3wP4fLEq;3SYGZ4Pr1=ucjoD2kHFessjg5j_|A;$8{@6^ zqMx;nm!}e(e2{(Jw`sJ!S7%Y14d1YUo8sKEtu3=k`O}KHR%Cv5$(;Ko-*y8?hI%v@ zmGMEoIL)srPFPA4d>H1vw6J2-@``Ke#|m6UM`!>@-k5}+db<1ecZ4VWy(b3+DJ6sn$%vjhat9L_lZNy zh&Oq;3S98aEaX+Gc0IpP$TTkx!h-hH04q`FHk}p|7Su`oVdtsFAXz@y2Z7_kU+sGR zax=zgy9>5mg#3d56KTh6Iup%LaIsVM02o@5ue`p`$Zbu=D<;)CXGT{D0;8WGueZ9( zpBCGMUGXhfmj;E6hNLo_-!gx8mRLwW5Q?WA!FN1?j$;U)hIxs~ihM{a7S2+DU~wP| zLi8AHXOLo;_i><{8`1=VgF_YqZk|@*2TA_~XFN4Nc>x7VIxd)Pk#9yxwEWV(pfmO~ zInoWv*OP(CzHix+YeA_8!_? zs)^CKy)8g-R$cuuXc2I~`Uy!oHMYmRbmMNCkOb36Y7^U3RPtfCVI zn5ib*@2?m$ttN`9Jwr{KFkwNFWLQFt53^!W{33SHSjX9|$S}lxuqZtZ5czgfOlH|= z>Kydk`kRYOy(CR`yimDR?~gQ+wiDLSqnlT;5tvdnS$=YQjHRZ2y~IbZG$K}j@J*yt z+{cMjy0zBo(}43OvGJPv8m#z*XMQQK;6KSL^CCBi+3*!;e#w_0(ikP(;u>GrJ>82i zC7XG1&k?2n>2r*5hNRw!<(0zEsbZWU@TS^H;crQ`d6$e3^AM@hu(2KE-KFNQ)0}e~ z6N0D3H~RrbkF?n8!g7n4H>WbVw>||o!{v+-7jiQ5ZdblS(6Q`eLFxU&+M}T8?@jPE zy4&hOjzLb=&o?(1-c#nO2BlmAUU!*Efq*Z;cTlAdf9yL=xYK^r?#}9P>QOKD9E2jd z_v<~eE=OU0@#0%|axTuH$ixm(1ee0LEon;xT_B%(3o$W$+egKZ3B9RaRUQqS?g1`O zE;C92&DVZ%eBdESoB!0}C)g)&Gn$J)WM^$#hUf>F`=1ovnvE6QyU+pOhR$hqkL{}- z@1r2TK-kwumwu?VMKnL^)K5t&zj}Y;6r{F;Q??k|RQGZ+0WywGc0RD5;;5vd76LC< zK;d%_?B^`ZBG3)xMPzC_K*nd&!`Z{oseP=y{~Lsh^#+}lZJ@7e3b5@#RUT%GXm4ex zbK6W)7Ybs3^YRaK2%?TWvg_Y)p9p8fpcf#_)D%(l?BNPEI62DYviD1{@CeHPL*hY7;kMYH@4zF$3Mzji3xkwbdHMI+i$@IWk&?Wi=s4)}eQP4O}!KWOia}-YIPT+8gN6|@Z0Z9PToEjNrlXz z-5|QzURb7QrHbDjL8VylO=R!LHO5s)KkJ@|cjF5P3%u5#jRUlc_flS@#(% z$@?yK%IF_o+H}K8u<|8#J-#e zlk0Qled?U0Hj~}aMGz*sn4w4FwO7@r9;c#(`+XMLAlTEK21W?~-PiE+84+pQ-8bKV zG2C%Boj1E`BBo^6A3sIF++y*5PZkb?xh&qLn~c|T^90BaL5}&eeJdX^Qc+yAHHa-kW z)-uzuph=;~&;SKX?T{w~r921?T($buIqJUzCjZCOE?HFYCMt-@^_-W**5$9>StkX! zQq+05Xm8cdN!oV*rPB7(_$U0iP*rq?r#`&r3(V4}$|kx*Ateaxn8(Z+?F>t$IKXJkAJd2(YBMyjT^9=Zvo@{U!<1mYzSwIp)7fxpa^Ggfb z>aVr{I$O8j@7{lS8^_A@_$scxObJa1Q=?KOYe^Qi9y?mpZc_=T8+juom7e@h@Zhtq z&^>xpl@fhn0Weweh+KuTc)mvf`ti6T7h*^^wDvDjT!g&dgzFXSA0X^bc3Gwf6a}D| z9hoei3oPZxtJ-va7GjgnhnPq{4iu8@;2qdKXqg^ZULuIon__&;IS(Fb5Q6gwzL?f^ z0safDtTl+;00r}caNZl5B_qHUQg8SpyI1%gP;=ArA-QY7g9{tcZR+aj2Y_5L58hjq z7M?z!rjD6DUKHcqz})GVYXm}iRSvC;Gze z`bRz8_H%hrD9dY5cKy4gXzyOC%TY*?{=MWk{Oi4~*RmL)@!zvl7Z;$vZs>{Uob&-9 zD?r^*AV|^uDX9+lX&;?-D!u{C5H4C-Z_G(QYfWF*(l3)U_X?-kmXP&_!+%2RPxFol zmZs`mmzccRo}}T1rXp+}K8>H}dqFI=othIhU`*PA)W8}jCYxtnH3p2pI3Nm`m$j_g zGBmH!t@!`X#c|~T$fis)?=K)k8A@utD+BT|^1umD&?kL%ywiQS_sia>+&my((QF({ z`0S@~IfBmrNuM#8r~^vrpoQ?Qm!JvyUy+C9?%AI14NxSvC158$LEk?GwF9R`N0=&* zmzwP{fbrqN2_Vbd0J+lTE-_*+I$WUu9bEA9>G6^*rwW7f9T#v;Z~~!LRd*%8z3CkQ zPbw!NgOhLft3%+g9;SM-9T_c5I&cq6<}7zWnqjt*H!|^!t{oKDQ>)ZJ#Q|SoG2A|1 zDrq(}oZfh+p+U1e?w8n#7pSQV`u>g&J9@$R(8^xY=1Uf21n`*G4^MJOq2BIgg1i>} zd#N41eOP8?CM!;p`JHJ%#n%GBH+{8->7zny%n|y}N^?5&`}Q~|#l)>YIJWIR#Jx+N z!OV4a5(45@k@wUlUjImy#JYa$=aMM=bXO>zPU4b7X%T; z%;W0GvI*x-Mz=L6P<;S^L`R(!*mbCM6k3%O;gud?Q=oR%CF^wtrp)nrV;SUwV}|*S z7oDSp4taB)zq^B@g*yl)AY^EVSn1WaJmQ751+}Z(%yrnsRNhN_E#gEC!b&<18q(CP zI?A#lhOarY+A3&SG!%Wq-J7VfD!N@=GC9*?vpDm6hmA1v-Zk`kJB;keAW7?4hyJ%c z&YJ)FngY3$0pH|T6p|HIcEZ~|vmn2xAyryX;V~Lh{uq+oH$j>lT2eK}5R=;%g~=>j z7buhlo!hGtloVSqk5O$N(HtUbI(MZl`IP&Sj+<3|8Pel=t4e|$cvmTbfn92wc&H88 z^$ak|B;tF*#ON{aHH!(~>zN;EJ%hg;*l`LJ&{t4jX@WgPQWCR&wn$rK;SnZ(dGl+^ zR{V<-Fy~P^`1>bOz8|df+C1RGK4?(l_t)+ZYu^|$nu@V^Sp+i@$un1y=tkdX1w6&gwBtv zB5(VmZZ(E{IDH=XS3KCS%A(93s_iSgW&M>x$_FTEbz3f330<0sQu~9su^5?e#&n~D zXD0?(F`eQhNIjaxFw)|>H5$dSTPz?;hCFzJfH&!e>Vw!KPZd7&(kzQYvWkP*W58$9 zsq(BK3g`7Hi!KOux0-#SexO6<|0wtkO;ydAT=f>dQjP6xcVBF8b=1SfoGv;O!S9(; zUb$Di0Ie8wzf8kbhul5n?{Y4LI%fSb*A|*4@%&2PQg6UDsE7|mjP~dgH4%#`q87M( zN)Zh);DPt4eRyl*!!N$0h(iB|SN#HnK_S&N+7o)57$B^DKba68{Y@G?<@+hYFzpH8 zaJ;R%oXo#uRUkEtuRXEFggnuqil$%UwCn%%c{LKA)D^PP#WAt*PB*9OL!Tjjtg8v& zlTz#5ZG>;+?QBETgO35b?On;&*s<#_xiXDHC8Zw#=HQ`#E$OC<4s(__d<=S`J={ln zch!;%XLwtV+Utq!pDPBn$73c#--5TVw1xpwkHVDFckXv*Xs;WgPv=4f!PH$4ne3G| z#1}{F`EcH#q9<(x5tho@K@;c(p5KE1x~Vy|*n22Q=;&F%aX(AIo)w(SFn6LTzh4D^ zWDC`2x;5G#?zX-Sp2eug{Q&P}j^df%3yY}pB-dxn;Wls|smY~Vq&#$YXbo+JsN-~~ zSF(BFuHH;Na}+rp3Ur?YF)(-@upgGJ_mWz*TL4t-3Y+69x<&o8>!NYsii90FYa}i$ zC{NzidYqml0tmHs62BL=r{ics60~k5g{l}i{{~Iu?;5(oS`VGQ5Wm~*s6YI(QKvKP zu5T*S zabKYo96xmn(stkn@m*y&0RWo2WBY03x0Z>o0Q7Rhu-4(Rt=0?iGmwOq!~hzL?q{V9 zPd2>&^3ECYP&a>pg!fD#E43BM?PgCjHdkZiHom}r&Hqh|W;kwy~`czEfVQJ5Optoxom?rQhn zbI@WZ*#}_gI1sqlqgQvw@G-QRJqMlLT=D0^)WX(r5h%~ekWO-`--mV-eOicMP$j4} z?hH17sX@3B5ztb~MgCFFigF-j*$M912t3JeKI+{77W0(y*Ds^D^tjW={bOq0THe_9 zodLU|N>?*D0Pl+8;!;!&+IHGZ$zFdB3gU)DszJO`Nq_Ta)-xxRL5?B977TYcs%(eu z8K%p4xx2Jq(_fp7Us;33fR+z5R2@sdET-o-Y$g1R&*kOzJ5L6(-pU01IIl)>D6=w2 zb*Z%~n>0(JzzFcsBeA!FV^Wz0$W1(SYJ&eUcp3dQ_h}SHR6V=30k>)oU0v|UU`-9o zwXd#R$KB{-vh^({TPb}YKShce9zJrtk9>hL;3_-S06vpu+!GArai*tn`Hf+6M+&3? zgP9ww4B99&&Pn#b`Qr`_&gyH!JR#~~#&v~_eUqATpp0SY* zKV5R&)9mauh@YFIGC#!NS`rnG#KOS_j#N?miUGB(VzY_!Ap&L#0m-CjyJ9v}} zTVLHyBfNXn0i3O%*Qr^{HIC0h^hxLT!?R&85C}QFt}v-CQp0c{l7B9eFp@XH1k_4x5k{6$(<=m2`tNB<iP|$xJwv4c9)|ex={aT z&UNj}dX52K)QM3$=Qm`fJ@%^xSXCp_Aqcpjn|Y_wH}UY59o*}bF+D}k=P|%&uNa{= zi+zKzS44wf1u0O|aeUKt- zE{RQiVYOatkhhufXc+CG1wnXjicWw^zm%OoGi-unBmoykmxwD z#a1PId}! zLuh5Lki4J|*)!R8IctZDQ}_pQ#Rlaq3Nr>Hary#T3_k;iUaQ6iY0JRq`!{D>*M;rl zIvTGE+|V*Y+nTq+6wT+u1n;5-St3ybiM71qnI4_1O5fifC z9}G341vf}01U@S+XTNC|?)nKwc4=>K1_u}w5$!N4WeSM3{Mfvm6&FOHcQ57J{cdC@ z7W=ydJGl3nPrbU89WR><;9ttV{yYU)cNIt^r*^J2p5urk$%L$|P zKv$K2Aq`oBCYvO}A#|PEtJ?F>WK+G{}eg{IkxuMML=z0b9Is3{7%-|61$yl&o)p@C42s1+`r}hG0m30U!@_LdBrlH zxK%{8_fHPsO@FJkV`0#n4_^Q=ThF%F9eu{bl3ex*$aZMFsB+1Po}B>Z z(i5|ih2YPfvn*HUV2V6;u0eB<#w8Z8voQJ7ZIqI3+hL(VarI8jzR8;nm=w>w@H6TREH{qu$Sl{icr z5aQq4bTNl-WvVIPVK<+@cP5V*zJx`k$omt--(S1HPacZDMZp$Ve|3oZa(3?S=cFKx z1!%ZAcwBpMYc-B0*O!tH0ShRUlc=?mp4gT_+_4Y2pn_CK!tc`u8omo+03tFlvYs?cNq8 z*5TfMh1>R5@k2k|g7WASv+SpyDyR{F`{7$m)LAoK-&p|jOLt$f>M;gQ=%oUpXhf?2 zGr@HI>#!3*o^g;e1#JAe2AyX`H1*TETEc*H|U(83bLP%-Yo^R5}o z5A5$AG|NyW?rN&E*$_NdES);IXXxEKh^eZ#*_BnK5)<)r^DtomleKmG_R;VDyg0NF#b-b?#b-eoreji z^==@qjQw?}G%oj{5k9*jb1we9&XglV4+f--&x0NQ+m#o5d;>04U3e8{$H;MLu*Qq6 zPcyvB6UVZlq>)(vNT!@haLU5wm*}NV58;`EefLQZ@TY!G=HhX)-cUa`;hKCsS8f;> zG!;}WkqSJo%f5sQcNZGjwjH=W1Q_Js_H3PjA~Y33dPv!Um*24#k4+Dd7~ZAOiHYP$eI z;xje=ji6#e!S#i_-gIxrCkSvIkj=u9KqIL;)7?6Lq9S{!!!<$^B4ovJ$-VRKi=RGJThu-HhSul8XLse|u(G&!^pd}j8K%Jiu_EA#yaGM|YM zL9B7P`{$m!&87qr)+Ct#6M}@WpF{$BXFmO^V0h3&g5X?4l>l2-)qc3^vE^x z{?|2^1(@yKUPbz`v>L}tFuhHP!T8VjMF~7t)Y4~@zx@62%g2Mji?{RXYhxUjT`9Dm zp17tY)jE|qPYzp8j;uHlx*TMh2;m*C;f`SHe9lRfZ82#uI3HJ)>wA6^gbIEV-2 zVRY?lnf8@mUGXH{LNUCDJH2Mt0f8fv6pN(c z8L}vDbkd7CRAF_{^p&#YUPt@YQoR95F{K`^3Ie;@ZM`Q!&Vkt>G$RW->N0@e#Gh1K zQB9yLA#Sbb5%5KJ(5vB_dpw>$JENeViVy=$BizuvIP1%IO8eQU>CtkFm%m;P-(nE9 zE7#7b@om)dY3_Y&d-MDrsg=^?7Nxnk1h7GCw;@a8m8)&*w|=)FJd8+R0Hsg-`&q+- zx+D)iC#hej?BEJ|0gZ^|HPuh4iZC8A87f;jXD98;_2*q(P4WA{0(<K`owUg|3Us?S1EoN> z(@#ZY>H0;UFj<}^(8L{->|E<xVsZKn8ZU zifA@@pA^gD#1t@sT`nrVRaF>Mojz1!68OzQ+ns>Ij z#*t3PbE2ZTK!@e(B6jA@)1gXhts^_`WyM_;(KwC6>%)&q4TwIHm6G>8YcbU8JnxVU!PUP`qE&EOo6GrMgyr(75+iTkg5Ov|dKg+bTLcpEHj?sPrhd46=Bk20B0fCK_kui7VrvIv2O6<|IQE=ssBe zOh5IR3iG@9&pm4X$D8+O(|6kiwPUslW>&fsGY(x49Xk160BioAwo3~Ic&h~DOu*SD z`h^*G)+d|0kxlV&X(>)uvwR?G)ZNO@1vohqAIW4>Ml{Q%&Rv^LL7Ru_pc8pZ%M}d` z&tLQR6C6yzF2n_dSAb}Y?zk-sq9I3)iN|=Jq^VZ_&rE2IGj`VgXY;*7v-^OB03D0A z&r|j2H&CSw)s!C0#d}ONQ~!O1$l{-bsb$nv3^+#Z39$B*)O^44X0My4=PHSdd+)~! z4hd;n6Xou3CXSY5;%hhJh}jEy<+@o#Nb>_Y7hq)Q$yY(P*7@?;%~$>OFKF?3(J2u| zp7R}`HNUCqc?+pV4o!``3brJSSAx#lf(x*D`8-oA5EV;LcD{?3s6mX(c=AwI zf-Ro3-iy8ZXM85_AH%ER`@dhm4shGXw?PW{4W=LX-H{OZBp67{Vn@0>Fng=vkx^8{ zR=~X>rgu`<2RXr889~amw$)oxcHgI1xmIyEz+*^-hF)MQ)5(=R0?QZ2*=rLX zUCA8*e*`y%&+huWpehHBl%yd&jGNNu_;1A`!-S>8v!CFuyU#2`D1*MUJBoA9P9Jls zfAgie45ed?S`(4mMm@eaYF+KA0L{j9KU9VdyZiZNh^|dI@f^sp6(HgdVMj@=f!0C$ z^O$U%Ia6P>z(#4cfJ~I@GX;LeRlmeiUO9x69r1!uNdrTN_T4GZo7J}90MuKZED*#! z1A68g{?$`+gKZN{3aegPfLZl}(Hkm$MPselZiKs@TP`X0Uu+P2y=k1-jq!_f^8M_db&Kh;e6pZPTVjvzLxtxVR~#&2%EQ>Lf=QfTTDF=v`739p$r`aaOSoh9Nc zw?mEYLY@?wE1F;ICr$#5L}Ai+E-OBw3IGwvt-^E3vYVDY-P23o9^8yFGUw_xs2kyD}n4_)*Q z8Y6xfC#%?Ki9ZnDI zlLKP~M<}o|^e9~4`E)B;s!MXi$IoRDVQlgT@xEab{&o5!#Ra>NIR1yY^abeh48LFM z|2nqCq?kJ{@(i<7zhCo&r}MvFj|-N2m%uS(uLVZsp?sU@;mjN6!R}qm2nvTgFahIZ zKYGEYAy?iy7VHIrjBh@%L9Hl*wm=He#e5_k7-WN)twmWw*NYee4X=^8tt zSXZd;omJzu9m=A*uPK#p2u>V%+E(?u9uGWxINIp$+nSG&E+pQbtu~kS>ORsM-O|+tm>ZNk^uA(tLqQM~OpY9wDG9JNzpGYSBQC z7`M}u`I5TK22Oq3jNqp-)qi@&^_6@8VaGL%jHx9<)g+mqm=1=wRfFk-7<#ykuTbEH zM_jujLpd|q%dhvzJ4mu)VBGd*aUtR%bQ=*J72vnmumYD~rLXg+&rAakjpnl5_mV1a zhTykTuu~g+#=^DNg zkSEu_F%e9`*0Myj!!l9$RXYR1U7NGQ;tZ!aSe_~&HX{f_i#B^MGx2qOT9&ebQk!kK zUHFHGbj-fuw*+o#{stt_nh-{Dmz$_2C}pKTm`C5{ief* zMh16I-pzeVyG{Kn`?1oJyaiB8-7&(kCI4>5Qog3C;hJ*rpIdBNR_R;y(b{c;`|FJJ z%^%m02MZ9R{m+GKIgLfK8xe<?GOqUhlWmgX-=wF#%RLLlQU_i=K(E9A^=%byB!X;k{YJp@r?tVw> zN0O8LZ}4+UvO4{`2j6-msJEd7T&RNXd)ZCOEs)tY&Mh_rL_H-Q^|!g&HO2q z*Dml(S)>u%H5SpmMe{AcLzuOwL2}?F-lLSg#cS#YG&LZXYV4Gd3HeFJg7((aI4{cg zL&_x8H<(T zlX_~}Z^WgMxGojWkGyw1AQ#4Vz90X+gS_Zjh2jx}`&6 zkd$tCj={aJ_kR6kj5>498UI-8x7H*4RME#e0IPK88Oq@lN%20(6XQcGA)sV;}j(~=xW?0yvsu+n+6&wb%vn)HWe0Wmk zf;c)81C~lZoEg$5y`wREN@Jx>xApMk;9E|UD&Jb@PAokEt(8O271-0-#xm%WJO&i% z=@vW;mu@-nQPF#p$kBMpm9r82`xXNCxW*sD7IIhTynOk4c5XpOdyGn-%oht3G)P|4 z6L@2K&f+0HxX_;Edi+llFUqzMiZ$_}RnGOB+tfiAl}1u=ZSOZ%p|vUip}11cP?5dp z9E-d^0p5cA=i}6;kD^xjs)QqK9h}#GSA_^%jH{J@b z<9@h(HLviiUl5VjbFf-EdYm;MOfZ?Rn`vMs2Nq**zn{|(JT?O6rmM)js#BPr z`SjFH!)8S!>W}8M6$GwcB(wZ6t)ZAN!QHQ1!pQ;#r9AK79E%2V&PS%tza3Ki5K(8D zRO&wi?#x`lk{lGR>=$ES6IMEZPT{%6g@VHn-Jc7Jd-BCIPRKim@H(`v>Gro^&V!)L z?<;EJqY@Ip%c)XQG}-)GfcOVIWx7vVzeJ0K6{hOfHLj-IMlVuHUmW>Iu!$!3$S3Ch zltOgQ8Z&bMR;SaHGZT5M-Qk+va=e=qLBT90j@mt=vg8rmD zNi?MX)lh|e_`gy-he^a89-sPS&c5|+j|bT1g7{yido%JEjRHnsH1-(-n#WuqDy-EB z>VQ51x2*bwcLKzVGQwnF-_4R2ifFM8FME~3Ef!Vhh+UgjWLb z2mWEW4(FmtZ_ma>D0@cAXP5S48NO#KXES#OV)&G7f{!oH=++IeHoDWmTT0}EU4Sr} z;+u=Xxc6IB{*S%j<+DHB*%*K7^RNeQQ`B1+a~bl#OZVJscz+9k=1f;RRnb4V45LT{ zj)dND9xebZB75k{A+2J}UHuztMDq(!@25K9=)%Hx$tz;&q9qO`{8ojF$C5*aW;1A` zF}G(j9tw;kp-V~)k$9%rgX9lhoV)Ud%OgRQZgoPH* z&yX{?U0eZQp|(HR`!~6b)Ti#`+Z+A0fTyy$H+O42 zac)Fdj%JVz0|2H%8Io?qA>-+dmyMV1W~M4`dUsz!oa_xR2QPy3R(l!RL-1YRn%=}t z@(F<3jI~O;DYxo$&xX_KPy5^t3TxlPGkULpmBA)nt(bedo_kaCDT~=0-S*!_m~RHl8003DF87Yz@QrNt=cLS112}L#p%& zWzk0C|B(5?3onZHWNjVuHieH(QT{&}JHP+kG6i+Ow@es$e=BCd%&0`{=+9Q`_BP9k zrlVQ9hcEKtkYKq-Mtl5_t;RO`Tn-|sJV`y&BF6qab~RE0$N|*&)6O;_YIy9cCnufz zJCxb}`d*<$+brInf@@m)hh1ZD-p+0wPK*%=Yi_Zb8KKdJXG)SJ%x9`{xskrt$6tha zHv(hdM*z`ih|hL>GhaVSgks_e`|PUVsXq*8>Pn+Bd%G#Zht~NZB70qmw3|N%M@xNH z^^@=*7;5&lxCygjwce0~>)5UsdWBHFPp-j`v2bgd_Q-=L>6U!huV2N!qKw0_?g7Kw z{RAYV<3*#{R$c<{h1d3GOu4f)rD`W%YlcH6wvAL-2es09=F8j*d4W1>Ed7`D@G3aS zeWSFI3Phys7~FuN3!;64QgfHM)DYbG7J#Sq=bzLbIN@Ud)N~F`9kkzWb8`dn(;x4J zVAU#zy#+IuIz({SCv(T-R*-tY*hJn7;_V`P0FtDVG0-B5l=I;6DxdQeb9hh_FpgyyIQ?MAYo<)fE+gN4yA!C{IK}(b zsOI>B=j0plghEvU6V`s$8d>K}qfs@?5wt+-s^_+p%Z$JI6yx{dnXu6Cx?FlL`^6@6 zP*N*h1nTbm@6ZU(}-$3`4cv2tiE=6NPL)XS5NKt{n{!YVJk zd*)^Ow=}oYi%Ry$%PJlSIX;wF1WOw3Li7;A&moreQFpFS*RjKy1{a(rQyl;+ z3f02Bp<|o00=IK*0d1lxDrhOJ$!^$Q)GGcWZ-!b!(y^iY!qibg7r27$KH6Rl=;s&H z(60$hft8NwboPw)Ef@LT@3*H0MQMQ=c6fc8{0{vKV+P6VXSb=P_8zTuy7hUqY!QbZ z`X7V6O9_xkJa0dN7eH4>BX#!1{m+Dr($8B<6Uhs%8TXrjg0#X6_3Jt!K+aQ_ zSs08kU2yKgDxEHz>~L65%vOj#78v3733!V{W+k@Fl9}!?>w5E^dgu^ToVC5nP)YjH zPhn?WdC8&~r?Lo7q~8simtmlFfTS2m>83aWIoNyJwYp)kWds!x3O6)}$~jy@ca;Wu zI0g(NHZJK8s<`dr=gRdsG0`x2QD7DhXAT``KxqHiBrIP42(&?_{fNNsS@l%4HXH6h z@ZOuQ=nysQ3qV-o`&_R4Mmf>Tlx6@GX8`avLBcUWidapzn%94C(_rDeyI?M!3zrtxIuzhI5=j*Re7` zg4G;f^DEqYI9+77N-l==2AQ79ovsJKOM5Rd6xceW&Wg8LXsiyqr#HOdaQ8id9NpET z-fiarw_#K8DNp6ExLf`hxdOWQ>1eC>$x*SbVY)4XW+T;ea&B+7{4)RkoUxN~h-nWp zFzedYiK?Wui|$)kvRd`_98a=ctnGs2_fezif@4xF1-d>4K3Ti=Ql3MkL~nTJRU-|4 z<*Ebsx+#Td-a@&FB%B!6NSj&cRN<0GE^H7#B6MbO?p}|F`>}gteFb4?pGSASt=viV zqd*cXO^pNaedwh;$V0Xe!fcIT#^HM+&W+Pg{E>lrDG529$vCooJtQ`);x~+ub9i{& zFbqUfH!!fPI5xB)hLhi|S}Ks_b!f~BcW%TLEU@Cu^*}EkSmX*%ER6S5f61RiFuQPSiN-(*ePvb#P2hkF- zC=xwRALV0bm9SWq^uH&%*5DT@UB~*FXRhdOkA}LEBl7GG-q8+g_;A!i9Vo^vO}8Zw+V7~G&7N8bb~asxutWj>jJY4h{MEvoFDLONMkG}du_G5w2qojwhv|! z<&NIJ8cyaWmzOje=53#epQ@sE!-X;wpcX{ezM=9%GLJW3Nm6eP$80$Z)w!0WKVepg z70X3dw>$H=%K^>-S9lVxNflnqX`~Q20rqaK)denpnV3-YL!Sj|(gKhfcy=ujvc?LBmmY!f%@c+sx32?AeUfVRD| zFQC9Lfl>Em9Ilygh#M7`OgM^k`XO#NBGqO1*yJMf*M+J}k`)z_m-@ADxPur=9!S#9 z@t|ND#0wL!6FqDz7oR~fI>pho-kf9m8sIb(fDh$VYx>ijEq#XEOGsxx>FvK5yGLx<){xlgu=I}LE=$f(k%pgDWY;96M(^9gw!JeBSG z-otks^M`J9s%Y+yNQ2+w`JfJXItojTBrNc__phdZqg$3|3@oDyWye`k`-MJAJ0IMn zT7P3n!b%-dov{K1i(@F_tFsMyu(h_?fQENjWY=3JtdV?%!nrKk14pDxH1At zY3Xu+kWva21QcyojF)Vvd=cp z9Ot=A8UJCrE#0B2GATISN`B$Yh5Blt+0(U%$-R==qJ4$`ZM*2!9!v~0dT;FTvLpkwe{rMTX@8jZI;{3g^!j?j zeaYUFTyz2is5(L`S)O+{XG+g|!@6j}qr&>F80K8Wp$|AbQ+C(bJ*=(GcQleiA#ZeO zM}H{b2h)B$1zlgYp!c@^($kddE$vno%E68QDf=iP_9mu1#_J%CfnP&Qapc0vdZrpcsEeg~JM}Utoz5O*>1Bys0 zB&DfZ2V8MKg%wQ}iatb4A56|}JMXwf`yEz^W0=J?w56d6jA(mBSq{`-S8lC4mA(^+ zWUx0L%+^cop4R}6@*Bv8$ELZVXH_V3Rb5aWeMDGn;;jq7gXw?bS)b+1AMS~?=-m>- z-d+0S=?CJ9!VP2?P#B06II0~svqEOOV)9OJWH7vZfvuVCNfbGX_4IU)G_Tf$gl^Zf z?^p=Z{;32C3o1T`_;dSzC?%u3zp21o@Wf)3nek?JTgcx@shwWi1Ax znJSJO8;s^sf2)Y&T|6R77~qw@U=V9RLN_}Vs8FtPY$JNs0@1fE8f(MS{^|jjwlvyz+|JNWaWf;!212W%HUtSbVm+XRG*bUh3%N&-&M0*i zqG~|Z#B*iS4BnF>=p)G>QOhnao_Ol zoMY-p`HexU`$%QFM9a*(%W!wfPBKNpn{Mk@hCu23Y?lxL z&KdGf+XsR~#VFCs%{Aa3RRXy}DR2)nR%1)eh9D#8Y|uuD)($nl`S;X1tt-rhWUpTx zwy2c8R_%tY{!QC@AdMOH?taSx-BGT&rT^9Trwv#n4tidAwtO!mT-o@Em3V9w2~TXQ z&9KGX=lU$@@|85@r2ZD}$Q2F2p|;DQ1wG_@r$u)d!@Y>m8uMEeoWhpftah|j28jYe zTYMH#1($?+hNU2`LaRQO3Uz+tUv%ki|nJ7*()-Xpg?WPVz|9#1Xr7 z2HLk9z?A{VVhS9!`>Iwq7x%_p25QDtfe90Z*^yI47Eee_`b{8WaOXxxK~lm^yolkx z4yn4z+QvnNnhFzZ#`IIqZw`QB{SEP|a+cuhNk_7C(8ZB)Qr;b-ug?+bFLzJs(2^v{ zOSK#sh9a#J8*WT9_=D3Mn@V_E)K7SeaO20tqT4Fgk(_DoDkbJhll!)6RBiqJfrRpW z1o2rUf?$bNyDxkKLq3Cix;N!S1RY-wOU}csIY%YX=OC-9XId_)TXN%?#Kai{i(wrV zpv}=!hUfpJ=L8J8XI*4L`wXuu)T0F3S5H>_8} zvV6Q`Q?TI+nO!Dt0nmT~@2_ecAnh3^Y(~!mHf=oSW@WUoCPL>X-Qq85_j~ zGtlZz;T-h|@Z@s8_A<)x#9wGcb8|kB6LcSv7A1N8*Fcm0iY-|GTLv9@Uuf2cV#qdN zK`F>qg}vnrIda6l)Dd}I^zWre|79+%&k}fxDD&*Q{2zao=BF;D4>%O_xjr`sTj6}E z0>a-4xfY>TvC>BOIZ&y^BVi$!h*f0VZ)1rg8%OBl7w2h;YxZhXCmIULWr!A~9Xf6R zwx(94*O{YTuAg*}mc(I2>$e}q6*tF0?~3jRO38}dNuw`6T@>$c*1TZjBvqjpGI@^# zI(X8#{5!dW@K@P`-hO~N*nRfd*a+Hz%&DyCwj)h!Xr9rZ#923t8*gza-*GKxuA`K~ z0UfetNnpZg$BsolA{MExQm?m(#5_nm^o4ThVpXR(s=d&k2$=rXQ*BM;zD9v)WU|(q zHU!SUl#uC;prf>iyKxkFUWv7e&)1Viz@JZS;pJTKR<1Jo3$6_}-yi0SxPn*MZ}(oZ z6_4n*>zD@;U#6_p{)F>FH@R>f6%%iAbZFI zJ5(H4YNcdjK&pTc>03gO^TDOx|I|tl6F4Z%X-e0M0S;Z@lIoNB^j~@X6ifoH%3v52 zOeOoPt~%+Uy62k#dxqw<&(2R}2agV({`rc~7o_$MUhs)xTeO05Y;Z)*Qx&og<}d70 ze+qM=DnY_C{T+x{?HmJ+s0A5ddHv$;3qS>~bNiYsAeCr>^5S%Jl>TBZPGvxR<;EWl ze60!S4>{I-YQ8uJc#~6OG7~A+K-+Hi?9J`n?q}OV!j}X+JriS37zou_u{2n^3ggRB zMPi=v5VjR_ib9}XxmgluM8VLD6}_|23neW-i`S&|{&x^m$Ig-y_Q48Rzw4d964O_1$?ydZb;l)$tr zoX~EOdslu=gIG8u`)WvNe+_ELxO;`~e}Z~9*uN4j^R852r)#*e%C-RCIH zZ#@FpSykAfv5KopRa-l07^l={`)8T!&kE&odBJ2;y90VJbz=GU=YYD992f6yfTlYV zbUb}D{HqZ-m7Hn&w1;K%d@8^1;<~;hAgkiATWp$1SSrhi5j1yEZ2bTc(-Ph4Knr6E z9J!5?c|9XJ%M%e(-CJi&MKrnMn&n>Gq!GA&k>PX6?8@6@U^!|&WGY$i9z1nAf#9Nt><^;thxYH-%S zulw+|R+Dar?w^Mou{!F>vZ4Jj0lVL?QpX2+(Emfj1nW*54 zjej(htR0e?j>Jt%h7uqL;Tu3SsI&V_&?h6cbpNQC5LB{L26f@zif}7Seh|cA-Twkj z%~0;`N4`8%)LL7a(L{iPtzRLgY3B#`-)UvT%N(KNHQt9$5DF`1-unMJ)0X zq+g3@vx3d06YD>fulivbzUhrDn3K`>b<%j2Zhb2@wWu%|uZ`xr%j4hk3AWtQ@mv7N zrCaT?tyS`6t4>DZ_c*Mr@5rfc8o??t0p0&hOt_Ws>k{9L|2vjp0rJ7VI@?R5d3aQ}_bTmAf zstV0?VfQg+jvzLx7fBp0L{)$+y;drvY(f_W5JQ3(rgFlT5|VAq=I$8sMIT@B8h~lp zl_!Y&3`@+y5xX8ai3JNJ8L{g>0gW;OV6lK}Kz5zY0sb44VR;6 zwDUXT{sg!H0x%;X4Ai77rDR78R=coi-{ z*l!NFAIg9-{e|c-IP-1ZEq{NQbOyXQg9}%y(P9P{{P<^~c=Xxu)Foz2NH1<#K}z+Zi&&}l~(6hMwJlmPU2go`mo0-bIetJZtYbDAXus>3ZrV_~p=pb28 zJ2?N$1S6&kE-+;=o&e+x+e^ri;%|J2Cm=aB7YSYR5t)o}G7W@D>oP?HCH03ru;;g0 zv0CJE$NC*nV*sY$;8dfF{92<)7f1*BwEcu5%29hfhAZopU#Aly+El#QK7K z_Fs}uu8qdPs-roNFy~V5t+v-Mw znQ7S48Ucl}92XDP8%yu3T{Z%w@db+cy3UegkA67Ii6q4V_MtQwPCNQi1LFjlEn7I} z#hN&+U&j?#0`Nl+Ps187_@>dIA8Pc zN6Bu|EK#@SNN`*kt4j|IL`Uul6o>-m09R-76sAz#+|trLmM#{Id2O{fApL7I&?TOx zsun(Q+cPMwhH}+S*6Y8WKZ!rqg`i1LN)H_l{E|YMDh6S({6VzV5)=e7@gLbL|GsnW z$0+cwDzj%ZHTxiM2<0@<)Cc!l@)7!<+_m52_pA)s_ zcEmdqc+4AD>}7A7?NS0IM%8T>;bpM8(g{2*4QxkWOtK{C=zk|5&H>eLLu-3Gf#keR zds>TWilECDuYSPt7W#nDvv7Hgb@Uf1WI^paORY<~xZ?&;wLhxY*RWOhS~sutSP{mD z7Nr1cx@X_M++u@@TNcF5SW+zmUe2lC<{-j5&92mHVFkq3EMEDYP2vXzyc5tEbRdItU2zcr(Nr zm`nH(7URKzT8oPn(Nn&RxxTW$+7k^cGjs8|y?`xz{|=}h*+AFb%iPQ+*MT5ax9~m{ zWA%)>ZwSgWzsk1~8u7H7xNt@EX0TNYTSqwT^2vhwm-S1a!3S5KiDu2!HgMd`UvtKz z5?~s@bmqI5o?wRKp7B3mO}VioRG^_EcvAe@z^as<=owK&#f3iY!K)yXMLl(4OXNrL z{jWyx337RY#Mm+IB0FDD&TOSq6hF7sNpBm*3IDoIYT+`PEo~P|+5XBs8&fAeoc2kH z>0z4IaDxBy4wv|*Wx?=CoNabQtYbW_3*^?j%$R_i{JSZZulEn2(Aj@0lj@4W0QlK* z|4<4i+WPz6p=fGP)miTC?BEaLBjf)k*=3;50~kB0$@X8i@V`}Pm-|1?4J750Hp@)$ z-5}r6yDQSE$2EGTHj*c4$~BWJ&UTz9_fQ=JP8*{y!tRIW$Dk^f;cPxu-&1(2TD1Q4 z`PYhcpyS&*MJqx1TH^ER$a7T3!WTT&vVq!R&F3C#Z}4LDN|SD6wtEdFbpr63X5Z@B zbD4_1`u?D#;+aBD`Ym4w8b8e9u=NOypL@&4z>u@?bN<$jl)VfYI&JMuKS`+w^W z=w6?NN%-LG66nFRj||bFeaOIO5EYC?PP70>E~DV&BYnHnBJxSZ^Zni);cM3R3Um>Z z*4xYN*T748;Q;~vAX7GIa3IexQy0k-6fjJZpK|Kg4%{f)z>2xDZhBy#>Ud9nt)I5u zx!4AD{4A~vq+1`)Jb<3|%S}#J;Hf0rYltvdD7@c)>e2#=iNey-p&H$>x~|OPL}l9I zLFi!|k#^HAhIbG22o%%QLrtj@lVB^jT^dWZkFwMbeB+;bGQH{!dJ(8&>xzx^29!o2LXvXH3i-Ui@cPqutoITAtSLhR_``~Z%`9As&MzEUERBK zx5^f?tPAE~Ap8C1491-cGgcs0va~E+)LYPXU9WGFNEDI~?*iPn4XoO|TV|(X67X}n zM(KwF13ipFClWwtmSrlztwGv#7zqHl3t$~IYd~YSO14h>0j{j-YIIufdksG0MLkK7 zN@X>nKi<1Q(c;ftkeW$lxdzA=)EKe+HXU zFy7uZ3Y;PRhI|r4mF=2O*#oWkJ&p^7nD8DmR^QR=#Nk{ru0wHURqJ?c5@Igl2FWzu zHy~}LwD}9uqV?qiUl1GFI%or{<9x+XwIpv+j6-Z^vvBwDP}8Sg+| z6sw+GlDmRKvgzg{`e>@A|mMo~CUMb^heEQhbh)l0UE zGmLM+3&Wm{i@-oX^~+&k$(^5Z)fn6&#~s^qbXZ}a*nc>DREGu0#54t@Sy_*=OU!7e7dzI-EsC^Owi)T(=J>h=Go2@!eE>63yp8O7mykCEf z(SG3_+`&{Gy}Q^fWM9K%e9U=A4hQ{*&St6+ZElQt1_xdJjVzS_2kD9piN}5aTAP>-{F5_0$nh z-zd>@hYpjQUT`!_);qt2KMgBlzoGm&m+NScv9?e0pB(+Bt$+}N11C?9Q_%rrG%9?cY+(Qyjksudx%ILQKTGss zNY3P0FhM(~f7*K>Vk@{KXsEQ-q`K>LSbL*H0OB@a*o>fsxA7s?b%UNxaWy?0K~pZq zXQ!fP{sMdn?_f_p!Y>duSpCH)RS+7wS^Svq^@TmHcTVzqJ~twZhY}g*?ssn8mn1Gb zJr?Dg7|FIg98t#-vyeq1wkRnd_F>4M(=Tzfg3uXFUcvi)-5%ena31hEc>t`nG`BwO>;m`J9wjX`&a7n(*9qzfhZwNneFt8>t267>M zs6lMI26DF_3m?*K36IX|qcg)XGVNp0yJV&$X$E=LAG8HuS)#K5cw%k6)2y5jf~8kA zr3t#p5HZD|;AEC0s_W?iJIX{-gFVWXKP1$-0h~z(~>`!%RBK-#4S&7k{&;)3w@Cys< zvq8&3nKL0kh#-$A%YSTrLBvG-72Z}0LT=8k8*R;gqN63j#wh&o9}m<30(7S-PU= zEQ-~|p=I;{`D5ElKCON?UpT!(YCI2oHl$e4LGxR55#!>TKZ-Rkd4XVp+5dnZrpsY~ z;%}rk`;U51HlZsb13Llw-31sE)*k^X#saBoa42FH8eeyPOqfG72E76TLaOh1xF!%f zT@bJkAFch`i`;QW%@2%KZraH&WI+F5IXGSKm?Olb22so#Gd)qv+{b8;WWnf^K zMqzr~_emVZ7@S>jdE4#N9B2gBOOG4$U|+A^+X47o%F89d&=qO>5k0y6vb)V*Uc_rhy%cikaEM>$I&`CK4h(khj zB-odlw2zfqcM^&A{k*APb1wdXlJ780M&}_)>yg{ zJ+s*R5`(1*)5AEV8>ZVg!pcR|H2Xfj5x!!P!L`WKd;y-~88QMvAdn9`xyYV10?v=g z7PO9^G=3Y4j`SRfa7ntB1XrQ_l;(U{P}+b(=Ns;hmkx8REh9~y3H>?RGRh+sXk4CT zx_nZDFA6j-;YWMs{N*}y+EjBEk+%dtBNdxb z3ltqKmXYgm@H=@{Yh$%45KkB+hoSMKnk*vM0|n`gE$3D$@>?%ycswEVu5xq50&4go zm^3(Ra~fN1CxWaKL&5^TB6e@Y`Y6H#Q8C*oHrGMaqUWXcodMD*u#fR1a$l*(vUjTE zjNcQ;+6u9C7_5r^iPEVLRxNCPm%}rfudaY>{fw5E3pz#o8FiBlPdi$LZ0cm0Kj%{ zpEhebngUp5v8dtLbB{>`BRL#o!*)%yLj4*oJ-@UmL`-#`>O@y%s>o)G*N{4Lc5G!nOFQb`HYqJd4ZP$_M=03GeD%f2~ywHyuH2O m-Cn!b2^Rm?J~;+KE~y8w9>B1@g^M46AM(=5Ql-#W{{IglDo0`f literal 0 HcmV?d00001 diff --git a/Git/Activities/GithubSSHkeys.png b/Git/Activities/GithubSSHkeys.png new file mode 100644 index 0000000000000000000000000000000000000000..48644bf70e0689f6f83bb1c2dc4f50148365bd1f GIT binary patch literal 39053 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 vz>%%W@6CW8{=lA^2@ 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 z z=mLr+U41B4onf(l_Lf^nc8%J`xGV-<1>wbgWhfKY^n#0@s0HkTYkmm73@fBVEBvLA zX;P9J>##C2@9Ec~&35XU{R)*;5*teBS5M6y7mt6CH!^B{Q+;J;-eBQ2-%4x^yW1Df z3Gp$@=J(4>tchn`RWLrKj?Mt*-p~pE#T)5u&Y`ta^hFMzs$k%_cqmvP3KwS!=u5GXT%C0m#Er z(@y!H8Vf;Nqn_6zfssJlnn2zEmCaw~X;o0V%;QS6eCpf{-a#37h=bGZx9Pi>l0gGdfzjTu}^l7OQJakyNN$w|uWOVfA1AvB{#9tq+#KQSxv{3oY+go#k!u+0XAMij zm_)7|{kmFemrajW4flz<2VXH&s@c2|_ru!S>g(fDLy)BRPjGfvU<`6o{xTwr&{9z? z_Yt8YdB#Lan4`G+-tw6R{T(njx6UtTrsJhGeFpIHoS8SXPe%XDMjI zP~|pBGaO$?qzKOh=b~GwRCSH#Z&wIYvOnaQQ>XR@tf;i7E21iB;Kp-*E{~D0(A>~; zx{58)g9oMT#YH9RzRfV7*H>lShVpE6e}QGv?j7YlQVCgVvP*Qcvo#DQ`E1X+oT$g~ z-t6wJwkJXMFO)y`^2sVWYv`hjct*^h@M!d*AMx{06PWTP&H^QJb|N|`|F2h=RqxwG z3qCG)5uuLk8mY_gay?ymZC_>-%KbC8% zD{h^!sU@+PsklypDfWTKMCO=Ed_4C?k zB=Q3I>{Z)En9+*53kclpSM~bde65t$n6$3V=l2Eh38`qb>f5MWc6j{7^{g$wTvRG- z8i{LAW4a8toP@ij%^UwLf{7(s_}|Du4Pf7dF6S5U49eI{-hor2+v`fpcT#B93+|E) z<{HLVTI7}87(-i%-rc+6s=v{HnM()8So4l4Szm1yg8sE`NR><%vuqvZ zkJ+CKBI7QQT=k)msXK7W9}Ghu8-knFjC&TMtV8R0_>-A#9*1cAP(%i%Xz}

    Nqlyk11_m1wc-qo&9fL6R5(J$u94Ko{ND<DM5 z_SvT*T9p~!3FCJH1BU`LqvX>{VCKk^fsgNGkJI09FebZR;GQ4|j=uE`#r0#NABcr? z7j-`3=gsDJOF30a{q-yOlvMON1Z%*-bsII}4ao6JUP|w{{pI|R5T4LUCC1TPsmNxe zR(8rz=j)lzbgsMBBU&$QcE9$1aU7|NT1e`sew~ITcMH8~v&cPi64UfDd{hq&dnUUU zQ*RPVnRQ2yZt?9*2JD(hr&Qm<1h71JD-*kG)}v8*j^U)X+idwdA17hKiS2!77NB0m`lm;Y8vzVb<% z!ZaR#JAIdH=8Z?Nnj@bmjqf&W3&?+82F6`WP3maA+AFA3V^7%SMy3gTjry#*^M?i{FZwQShvo=dw8{Mhc$I z8`EzRKQsro1kFJcEix%7I=?uqu%+4N{&}JsqiH~#JBR+aB^V}ngZZi^$JW)<4!;a&?< z3K`epV8$u+PVM4k0xSi$4APuhwImKWD^ZC~bb;)4Tv z6QD;tH5A-@UE6(Jy;ZiO&5jyAE@HH1V+L?G(gc ziPhp=!x1xhbA}0QxR-u}al9b`<}ih=$z+%5x6KNM@_JI+k!g~j|Rm&&$TentD{=B@Km zRVbu(^hOT3)OcXVhJ1}lj#*bjfo7t)z=SHnqslc|9D2=Y$BBUUgYjqBfCI;l{Y@^T zP1mN>a*Mo@8ww)D+AhB}{d=h;WUxniq?|uPzb+nGn6>kQaJQwwT)_ zolngEkMy{U+=fq>trwIh(&wDy?SgfIgIdM% zS)2zxjlJ@A@1|vBk?x$`H+N2@(x%BgYokO9Rn@rSX>UKTFVU`zQCPHEHcI>@9?tFb zxbx3xL;*tB<>y865~(NCNn3*%f)CyO-FvWp>zmGR{eSIGO(y0WdShMFo=j~e8z)bN zp^Jkx;&;N}qLd8!i;Sfui#f~I?4ggvAQoRWr!I$AZS%)=2&XkWs^t0O$RDW^MVUp^ z$Q`5zI&9x{YpuDiGV)skbKAmR$pzs*A(&nX*z=11nHphOIob%^y$MvG?S&S-*f*5f zdOXFk?W%_7<8M;3YoFAh9F=LI8KUAI#<8>q5nhFpgM*e`o$t7l5zqCfqa}EJISJ^# zj3l3a1K^&d2>&1ohZJmW@Ey+TDhTyu=^&Kd`ql3!bKONNd{I9LE!iL zt)bf9#@cE%jblWv0eeG-pImg6guT!`9%~#qnJb--z^f#h4`FSo8gxxPu^o41WZIGy zYBj3HEdoyEq+2TrZv4HU`VPnGoK)=v%YJXlcCCf2ONsIdduX%izS1P|O`Brv`_I{w zCkpSrQEN*aSWEJgSrBM}FA=`kdOR&(P6({)t*{noKdTdd{ z6zNNhh<%?n_(my--)UQ=WU`7{{z1taT}38xZ&BEPGUi%uW$Uhv==L|)9g~xnhFGWd zJ#q223!9JcSH$cXXfXD>N|$9Q{3rQ68)1R_BL*&PF#oVSp`@1_XTO z*p-J|+Op`KC)WP(LBkpA$0-O{zqW_0bFKXL_d zcY?)nVo_e2`&$XdhFu*4V4OAohYz?5txR0psV%_+1PmBJ+0{Ltbx8||@5;qw%F(9a zc>R>{*IsN%NBLaq6B_S8;s~7VO2mPK1iSTR@51o#1wfDUXyx-b+=h^cntyEuwdsb_ z1A$6(N5hw(BLGjB7`^=sHXEav>-mpjdL1YYSib+Vvy1UQ^}NlvYRU3hQR*m2&Krpb zP9Vp)jWSJKiJk9NhZ#4@$X4L^Z88&OXc;vLjI8y$c)k4N$HR{~yEE}~xn|B!_`J>o z6(WWKrDbE<5(m&xGhruF=NRB9rM$A7(a2(3mk%f6yWg)`G!floFc=4xZ@7j!{#n7y z3{uy<>*-Gl&DB^ei+UJnEL70CE+gee$VEVJjemGZlrVwhy1)sr-|0C4;zXU9 zW1}${>7p&lbYK{=_L-8#=liAmY6h;Bw2vH(XpHS;-0XPtdmep~Uq<%wy@qyTJW&gL z@R?(9o4UDJ6sEuKEdIcG;D?@6QLh=V(s5(zI8R5Y=gAom`_wfuOSo4xl4r=ODq;cV zV|cPC=Nx{W_=#Ot@fX#53I+p|Wl*1E;Z;vxlrpL4DoPxqc6`ILznOxe9$3iedjs3@ z3Wkdaw^w|Vtpg5G9KaJ$(NJi`_oH^GcVLtlzRS&Z-Bh>b#GE!p#+}vuN-_oG5g*d< z7`UPqd*zKg^(7%Z4f%}-026>v&64&;j+4T2iX}?y3)HV(kN6IiK=I0v8~BzUYx*lJ z;_h-xp1^HW^`l=E{_)IyFlo=iCi)V%ZE){6YaQ;)Lbv;e3p_xK)2$R{=)cMzWP2@3 z;rB9dU@1T7>bl7!Zg5~a_6-+WdI@7RKpCMg@y74E^xEq1^(C?J6JVmqL+#tn=q9;R zev=~m&mcv7R#u-Q*uQTu(oFsl>;DBT_R0^|5UX81>o_v?pTSx@(_#4>McRnBRv-FNDyHvz z>swV=u(fPQY82bl8cH%)Ix@#@l7&LrKK(e5crp`Xba4iHOm?3@5odZcGDK1K^O9T@n!%E~LKWN*sw)0HODAG`_(ijQWD#SvH){0e{h zQbWY^Xm|Z^76IKBC!a$4TeA9Kc8fGd7vD#~OROAqia6Y!wxB%^ z?@*i9cQEj$d>Xj$Ci@bjL3o_@G_6nlGG-cU$<(slpG75~FZ9+OZm zmH{oZa01DY@3P3cBFzpl3f;N#fZsPydR-EG?hQN$GYhsL?i}g()k(hHiV^XNHHgRh zvJhY7-48L~@Mh;UuNfV2G2SGnwxjy;Mk4f4{wJ2#rQt_C@pDs{%1{XZBzk_MZBAF6R*_Y z%3A7>i_HUGT-{|Y=M9egtAo{=wJrbkc-v@vm<8_akU*c;zoU=r63{~ApI;{3xXOyZ z>uffBH$LNE)6v;oPblu;kB{bP`=1=NFfuwiT8;Q;?XW!-Qv82A%m3)B{+omTGfu;g zw`!At^8aS!|IO+CH*;{?KX;|Njl_|8S-t1H)tHRr9~2Q05RBJPk@& MUPG?*`D@?*0J9FL#sB~S literal 0 HcmV?d00001 From 9eaf7329c5aa4e50f744509d295c232790a3a045 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 9 Apr 2025 03:59:08 -0700 Subject: [PATCH 28/51] Add files via upload --- TestNG/Activities/Activity8.xml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 TestNG/Activities/Activity8.xml diff --git a/TestNG/Activities/Activity8.xml b/TestNG/Activities/Activity8.xml new file mode 100644 index 0000000000..f924192786 --- /dev/null +++ b/TestNG/Activities/Activity8.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 1c71b9498d1418afda2ceef30cf240d72c6cab76 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Fri, 25 Apr 2025 10:57:56 +0530 Subject: [PATCH 29/51] Add files via upload --- Appium/Activities/Activity8.xml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 Appium/Activities/Activity8.xml diff --git a/Appium/Activities/Activity8.xml b/Appium/Activities/Activity8.xml new file mode 100644 index 0000000000..5d0a8e5be5 --- /dev/null +++ b/Appium/Activities/Activity8.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From b52f2f588818bf64dc0b77a1ba3a069871865d8d Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Mon, 28 Apr 2025 11:43:05 +0530 Subject: [PATCH 30/51] Add files via upload --- Selenium/Activities/Activity11_new.java | 29 +++++++++++++++++++++++++ Selenium/Activities/Activity4_new.java | 28 ++++++++++++++++++++++++ Selenium/Activities/Activity5_new.java | 26 ++++++++++++++++++++++ Selenium/Activities/Activity6_new.java | 23 ++++++++++++++++++++ 4 files changed, 106 insertions(+) create mode 100644 Selenium/Activities/Activity11_new.java create mode 100644 Selenium/Activities/Activity4_new.java create mode 100644 Selenium/Activities/Activity5_new.java create mode 100644 Selenium/Activities/Activity6_new.java diff --git a/Selenium/Activities/Activity11_new.java b/Selenium/Activities/Activity11_new.java new file mode 100644 index 0000000000..a054a67f16 --- /dev/null +++ b/Selenium/Activities/Activity11_new.java @@ -0,0 +1,29 @@ +package activities; + +import java.time.Duration; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; + +public class Activity11 { + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + driver.get("https://www.training-support.net/webelements/dynamic-controls"); + System.out.println("Page title is: " + driver.getTitle()); + + WebElement checkbox = driver.findElement(By.id("checkbox")); + System.out.println("Checkbox is visible? " + checkbox.isDisplayed()); + + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + wait.until(ExpectedConditions.invisibilityOf(checkbox)); + System.out.println("Checkbox is visible? " + checkbox.isDisplayed()); + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + wait.until(ExpectedConditions.elementToBeClickable(checkbox)).click(); + System.out.println("Checkbox is selected? " + checkbox.isSelected()); + driver.quit(); + } +} diff --git a/Selenium/Activities/Activity4_new.java b/Selenium/Activities/Activity4_new.java new file mode 100644 index 0000000000..3ce9a90ea4 --- /dev/null +++ b/Selenium/Activities/Activity4_new.java @@ -0,0 +1,28 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.Color; + +public class Activity4 { + public static void main(String[] args) { + + WebDriver driver = new FirefoxDriver(); + + driver.get("https://training-support.net/webelements/target-practice"); + System.out.println("Page title: " + driver.getTitle()); + + + String thirdHeaderText = driver.findElement(By.xpath("//h3[contains(text(), '#3')]")).getText(); + System.out.println(thirdHeaderText); + Color fifthHeaderColor = Color.fromString(driver.findElement(By.xpath("//h5[contains(text(), '#5')]")).getCssValue("color")); + System.out.println("Color as RGB: " + fifthHeaderColor.asRgb()); + System.out.println("Color as hexcode: " + fifthHeaderColor.asHex()); + String purpleButtonClass = driver.findElement(By.xpath("//button[text()='Purple']")).getDomAttribute("class"); + System.out.println(purpleButtonClass); + String slateButtonText = driver.findElement(By.xpath("//button[contains(@class, 'slate')]")).getText(); + System.out.println(slateButtonText); + driver.quit(); + } +} \ No newline at end of file diff --git a/Selenium/Activities/Activity5_new.java b/Selenium/Activities/Activity5_new.java new file mode 100644 index 0000000000..6421e2a66a --- /dev/null +++ b/Selenium/Activities/Activity5_new.java @@ -0,0 +1,26 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity5 { + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/dynamic-controls"); + System.out.println("Page title: " + driver.getTitle()); + + WebElement checkbox = driver.findElement(By.id("checkbox")); + + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + + System.out.println("Checkbox is displayed: " + checkbox.isDisplayed()); + + driver.findElement(By.xpath("//button[text()='Toggle Checkbox']")).click(); + System.out.println("Checkbox is displayed: " + checkbox.isDisplayed()); + + + driver.quit(); + } +} diff --git a/Selenium/Activities/Activity6_new.java b/Selenium/Activities/Activity6_new.java new file mode 100644 index 0000000000..35d09d99c3 --- /dev/null +++ b/Selenium/Activities/Activity6_new.java @@ -0,0 +1,23 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; + +public class Activity6 { + public static void main(String[] args) { + WebDriver driver = new FirefoxDriver(); + + driver.get("https://training-support.net/webelements/dynamic-controls"); + + System.out.println("Page title: " + driver.getTitle()); + WebElement checkBox = driver.findElement(By.id("checkbox")); + checkBox.click(); + System.out.println("Checkbox is selected: " + checkbox.isSelected()); + checkBox.click(); + + System.out.println("Checkbox is selected: " + checkbox.isSelected()); + driver.quit(); + } +} From f8ad61e64747892efc8ab7b3a3123614366f2822 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Mon, 28 Apr 2025 12:27:44 +0530 Subject: [PATCH 31/51] Add files via upload --- TestNG/Activities/Activity2_new.java | 59 +++++++++++++++++ TestNG/Activities/Activity3_new.java | 35 ++++++++++ TestNG/Activities/Activity6_new.java | 40 ++++++++++++ TestNG/Activities/Activity8_new.xml | 24 +++++++ TestNG/Activities/Activity9_new.java | 98 ++++++++++++++++++++++++++++ 5 files changed, 256 insertions(+) create mode 100644 TestNG/Activities/Activity2_new.java create mode 100644 TestNG/Activities/Activity3_new.java create mode 100644 TestNG/Activities/Activity6_new.java create mode 100644 TestNG/Activities/Activity8_new.xml create mode 100644 TestNG/Activities/Activity9_new.java diff --git a/TestNG/Activities/Activity2_new.java b/TestNG/Activities/Activity2_new.java new file mode 100644 index 0000000000..70c9b30164 --- /dev/null +++ b/TestNG/Activities/Activity2_new.java @@ -0,0 +1,59 @@ +package activities; + +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertTrue; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.SkipException; +import org.testng.annotations.AfterTest; +import org.testng.annotations.BeforeTest; +import org.testng.annotations.Test; + +public class Activity2 { + WebDriver driver; + + @BeforeTest + public void beforeMethod() { + + driver = new FirefoxDriver(); + driver.get("https://v1.training-support.net/selenium/target-practice"); + } + + @Test + public void testCase1() { + + String title = driver.getTitle(); + System.out.println("Title is: " + title); + assertEquals(title, "Target Practice"); + } + + @Test + public void testCase2() { + + WebElement blackButton = driver.findElement(By.cssSelector("button.black")); + assertTrue(blackButton.isDisplayed()); + assertEquals(blackButton.getText(), "Black"); + } + + @Test(enabled = false) + public void testCase3() { + + String subHeading = driver.findElement(By.className("sub")).getText(); + assertTrue(subHeading.contains("Practice")); + } + + @Test + public void testCase4() { + throw new SkipException("Skipping test case"); + } + + @AfterTest + public void afterMethod() { + + driver.close(); + } + +} diff --git a/TestNG/Activities/Activity3_new.java b/TestNG/Activities/Activity3_new.java new file mode 100644 index 0000000000..e7ae022619 --- /dev/null +++ b/TestNG/Activities/Activity3_new.java @@ -0,0 +1,35 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +public class Activity3 { + WebDriver driver; + + @BeforeClass + public void beforeClass() { + driver = new FirefoxDriver(); + driver.get("https://v1.training-support.net/selenium/login-form"); + } + + @Test + public void loginTest() { + WebElement username = driver.findElement(By.id("username")).sendKeys("admin"); + WebElement password = driver.findElement(By.id("password")).sendKeys("password"); + + driver.findElement(By.xpath("//button[text()='Log in']")).click(); + String loginMessage = driver.findElement(By.id("action-confirmation")).getText(); + Assert.assertEquals("Welcome Back, admin", loginMessage); + } + + @AfterClass + public void afterClass() { + driver.close(); + } +} diff --git a/TestNG/Activities/Activity6_new.java b/TestNG/Activities/Activity6_new.java new file mode 100644 index 0000000000..fa8c8c557d --- /dev/null +++ b/TestNG/Activities/Activity6_new.java @@ -0,0 +1,40 @@ +package activities; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Parameters; +import org.testng.annotations.Test; +public class Activity6 { + WebDriver driver; + WebDriverWait wait; + + @BeforeClass + public void beforeClass() { + driver = new FirefoxDriver(); + driver.get("https://training-support.net/webelements/login-form"); + } + + @Test + @Parameters({"username", "password"}) + public void loginTestCase(String username, String password) { + //Find username and pasword fields + WebElement usernameField = driver.findElement(By.id("username")).sendKeys(username); + WebElement passwordField = driver.findElement(By.id("password")).sendKeys(password); + + driver.findElement(By.xpath("//button[text()='Submit']")).click(); + String loginMessage = driver.findElement(By.xpath("//h2")).getText(); + Assert.assertEquals(loginMessage, "Welcome Back, Admin!"); + } + + @AfterClass + public void afterClass() { + driver.close(); + } + +} diff --git a/TestNG/Activities/Activity8_new.xml b/TestNG/Activities/Activity8_new.xml new file mode 100644 index 0000000000..5d0a8e5be5 --- /dev/null +++ b/TestNG/Activities/Activity8_new.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/TestNG/Activities/Activity9_new.java b/TestNG/Activities/Activity9_new.java new file mode 100644 index 0000000000..1aee06ab3e --- /dev/null +++ b/TestNG/Activities/Activity9_new.java @@ -0,0 +1,98 @@ +package activities; + +import java.time.Duration; + +import org.openqa.selenium.Alert; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +import org.testng.Reporter; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.Test; + +public class activity9 { + + WebDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() { + + driver = new FirefoxDriver(); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + + driver.get("https://training-support.net/webelements/alerts"); + + + } + + @BeforeMethod() + public void defaultContent() { + + driver.switchTo().defaultContent(); + + } + + + @Test(priority = 1) + public void simpleAlert() { + + driver.findElement(By.id("simple")).click(); + Reporter.log("Simple Alert opened |"); + Alert smplAlert = driver.switchTo().alert(); + Reporter.log(smplAlert.getText()); + + smplAlert.accept(); + + String msg = driver.findElement(By.id("result")).getText(); + Assert.assertEquals(msg, "You just accepted a simple alert!"); + + } + @Test(priority = 2) + public void confirmAlert() { + + driver.findElement(By.id("confirmation")).click(); + Reporter.log("Confirm Alert opened |"); + Alert cnfrmAlert = driver.switchTo().alert(); + Reporter.log(cnfrmAlert.getText()); + + cnfrmAlert.accept(); + + String msg = driver.findElement(By.id("result")).getText(); + Assert.assertEquals(msg, "You just accepted a confirmation alert!"); + + + } + + @Test(priority = 3) + public void promptAlert() { + + driver.findElement(By.id("prompt")).click(); + Reporter.log("Prompt Alert opened |"); + Alert promptAlert = driver.switchTo().alert(); + Reporter.log(promptAlert.getText()); + + promptAlert.sendKeys("Malli"); + promptAlert.accept(); + + String msg = driver.findElement(By.id("result")).getText(); + Assert.assertEquals(msg, "You typed \"Malli\" into the prompt!"); + + + } + + + @AfterClass + public void tearDown() { + + driver.quit(); + + } + + + +} From 54ee55d7b793c151b1b7f006e3b9fd3688c568ab Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Mon, 28 Apr 2025 12:29:28 +0530 Subject: [PATCH 32/51] Add files via upload --- Cucumber/Activities/Activity7_new.java | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Cucumber/Activities/Activity7_new.java diff --git a/Cucumber/Activities/Activity7_new.java b/Cucumber/Activities/Activity7_new.java new file mode 100644 index 0000000000..bb1d47657f --- /dev/null +++ b/Cucumber/Activities/Activity7_new.java @@ -0,0 +1,34 @@ +package stepdefinitions; + +import java.util.List; +import io.cucumber.datatable.DataTable; +import io.cucumber.java.en.Given; +import io.cucumber.java.en.Then; +import io.cucumber.java.en.When; +import org.openqa.selenium.By; + +public class Activity7 extends BaseClass { + + @Given("User is on the To-Do list page") + public void completeRequirement() { + driver.get("https://training-support.net/webelements/todo-list"); + System.out.println("Given completed"); + } + + @When("User adds the following tasks") + public void inputTasks(DataTable inputTasks) throws InterruptedException { + List tasks = inputTasks.asList(); + System.out.println(tasks); + + for(String task : tasks) { + driver.findElement(By.id("todo-input")).sendKeys(task); + driver.findElement(By.id("todo-add")).click(); + Thread.sleep(2000); + } + } + + @Then("they can see the task added to the list") + public void verifyResults() { + System.out.println("All tasks are present"); + } +} \ No newline at end of file From 85678f3abdaa9799e2cb28e675dcc469abc6432f Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:44:04 +0530 Subject: [PATCH 33/51] Delete API/Activities/Activity3.xml --- API/Activities/Activity3.xml | 245 ----------------------------------- 1 file changed, 245 deletions(-) delete mode 100644 API/Activities/Activity3.xml diff --git a/API/Activities/Activity3.xml b/API/Activities/Activity3.xml deleted file mode 100644 index 5537ea1fc6..0000000000 --- a/API/Activities/Activity3.xml +++ /dev/null @@ -1,245 +0,0 @@ - - - - - - - - http://ipwhois.app - - - - - - - - - IP - IP - TEMPLATE - IP - - - - - - application/json; charset=utf-8 - 200 - - ns:Response - - - - <xml-fragment/> - - http://ipwhois.app - - http://ipwhois.app/json/IP - - No Authorization - No Authorization - - - - - - - IP - - - - - - - - SEQUENTIAL - - - - - - - - 5 - 1 - 0 - COMP - IP - 0 - false - IPv4 - - - - false - false - IP - true - false - - - - - - - - <xml-fragment/> - - http://ipwhois.app - - http://ipwhois.app/json/230.230.54.126 - - - - 200 - - - - - 200 - - - - No Authorization - No Authorization - - - - - - - IP - - - - - - - - - cityTransfer - Response - GET Request - $['city'] - city_name - Data Sink - - JSONPATH - true - - - latTransfer - Response - GET Request - $['latitude'] - latitude - Data Sink - JSONPATH - true - - - longTransfer - Response - GET Request - $['longitude'] - longitude - Data Sink - JSONPATH - true - - - - - - - - - com.mysql.jdbc.Driver - jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE - 6Y6NowPybq - FSTConnection - INSERT INTO coordinates VALUES(?, ?, ?); - false - - - - - city_name - Washington - - - latitude - 38.9071923 - - - longitude - -77.0368707 - - - - - - - - Data Source - GET Request - true - - - - - - - - - - - - - - FSTConnection - com.mysql.jdbc.Driver - jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE - 6Y6NowPybq - - - - - - - - - - - - // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls -// This code is often used for adding custom authentication to ReadyAPI functional tests - -// If hardcoding the token, uncomment and change line 5 -// token = '4567' - -// If your token is parameterized in Project level custom property, uncomment line 8 -// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() - -// To modify all outgoing calls, remove comments from lines 11 to 16 -// headers = request.requestHeaders -// if (headers.containsKey('auth_token2') == false) { -// headers.put('auth_token2', token) -// request.requestHeaders = headers -// } - - - // Save all test step results into files -// Change the directory path in line 5 to a location where you want to store details -// then uncomment lines 5 to 10 - -// filePath = 'C:\\tempOutputDirectory\\' -// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) -// pw = new java.io.PrintWriter(fos) -// testStepResult.writeTo(pw) -// pw.close() -// fos.close() - - - - From 6af3505fb92f592cf468ced70e8d7709a4a6546a Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:44:14 +0530 Subject: [PATCH 34/51] Delete API/Activities/Activity6.xml --- API/Activities/Activity6.xml | 245 ----------------------------------- 1 file changed, 245 deletions(-) delete mode 100644 API/Activities/Activity6.xml diff --git a/API/Activities/Activity6.xml b/API/Activities/Activity6.xml deleted file mode 100644 index 5537ea1fc6..0000000000 --- a/API/Activities/Activity6.xml +++ /dev/null @@ -1,245 +0,0 @@ - - - - - - - - http://ipwhois.app - - - - - - - - - IP - IP - TEMPLATE - IP - - - - - - application/json; charset=utf-8 - 200 - - ns:Response - - - - <xml-fragment/> - - http://ipwhois.app - - http://ipwhois.app/json/IP - - No Authorization - No Authorization - - - - - - - IP - - - - - - - - SEQUENTIAL - - - - - - - - 5 - 1 - 0 - COMP - IP - 0 - false - IPv4 - - - - false - false - IP - true - false - - - - - - - - <xml-fragment/> - - http://ipwhois.app - - http://ipwhois.app/json/230.230.54.126 - - - - 200 - - - - - 200 - - - - No Authorization - No Authorization - - - - - - - IP - - - - - - - - - cityTransfer - Response - GET Request - $['city'] - city_name - Data Sink - - JSONPATH - true - - - latTransfer - Response - GET Request - $['latitude'] - latitude - Data Sink - JSONPATH - true - - - longTransfer - Response - GET Request - $['longitude'] - longitude - Data Sink - JSONPATH - true - - - - - - - - - com.mysql.jdbc.Driver - jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE - 6Y6NowPybq - FSTConnection - INSERT INTO coordinates VALUES(?, ?, ?); - false - - - - - city_name - Washington - - - latitude - 38.9071923 - - - longitude - -77.0368707 - - - - - - - - Data Source - GET Request - true - - - - - - - - - - - - - - FSTConnection - com.mysql.jdbc.Driver - jdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE - 6Y6NowPybq - - - - - - - - - - - - // Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls -// This code is often used for adding custom authentication to ReadyAPI functional tests - -// If hardcoding the token, uncomment and change line 5 -// token = '4567' - -// If your token is parameterized in Project level custom property, uncomment line 8 -// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() - -// To modify all outgoing calls, remove comments from lines 11 to 16 -// headers = request.requestHeaders -// if (headers.containsKey('auth_token2') == false) { -// headers.put('auth_token2', token) -// request.requestHeaders = headers -// } - - - // Save all test step results into files -// Change the directory path in line 5 to a location where you want to store details -// then uncomment lines 5 to 10 - -// filePath = 'C:\\tempOutputDirectory\\' -// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) -// pw = new java.io.PrintWriter(fos) -// testStepResult.writeTo(pw) -// pw.close() -// fos.close() - - - - From 8aa3698b7675018fad5bc37f5d894ae5a339d323 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:45:00 +0530 Subject: [PATCH 35/51] Delete API/Activities/CalculatorSOAP.xml --- API/Activities/CalculatorSOAP.xml | 291 ------------------------------ 1 file changed, 291 deletions(-) delete mode 100644 API/Activities/CalculatorSOAP.xml diff --git a/API/Activities/CalculatorSOAP.xml b/API/Activities/CalculatorSOAP.xml deleted file mode 100644 index f26c5aad72..0000000000 --- a/API/Activities/CalculatorSOAP.xml +++ /dev/null @@ -1,291 +0,0 @@ - -http://www.dneonline.com/calculator.asmx?wsdl - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Adds two integers. This is a test WebService. ©DNE Online - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -]]>http://schemas.xmlsoap.org/wsdl/http://www.dneonline.com/calculator.asmxUTF-8http://www.dneonline.com/calculator.asmx\r - \r - \r - \r - ?\r - ?\r - \r - \r -]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r - \r - \r - \r - ?\r - ?\r - \r - \r -]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r - \r - \r - \r - ?\r - ?\r - \r - \r -]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r - \r - \r - \r - ?\r - ?\r - \r - \r -]]>No AuthorizationNo AuthorizationSEQUENTIALCalculatorSoap12Add<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx\r - \r - \r - \r - 25\r - 5\r - \r - \r -]]>200declare namespace ns1='http://tempuri.org/'; - -//ns1:AddResult30falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Divide<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx\r - \r - \r - \r - 20\r - 2\r - \r - \r -]]>200declare namespace ns1='http://tempuri.org/'; - -//ns1:DivideResult10falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Multiply<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx - - - - 10 - 2 - - -]]>200declare namespace ns1='http://tempuri.org/'; - -//ns1:MultiplyResult20falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Subtract<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx - - - - 10 - 2 - - -]]>200declare namespace ns1='http://tempuri.org/'; - -//ns1:SubtractResult8falsefalsefalseNo AuthorizationNo Authorization0aee0df6-d8ef-4dea-8904-a9abb0007bedNONE52e98521-e8ce-4191-b0ec-f59cf9d969b3NONE30970bb8-502b-4b91-9542-18b3ce30f22aNONE25003ab1-7200-4c65-abfe-6f82e6c9102aNONE// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls -// This code is often used for adding custom authentication to ReadyAPI functional tests - -// If hardcoding the token, uncomment and change line 5 -// token = '4567' - -// If your token is parameterized in Project level custom property, uncomment line 8 -// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() - -// To modify all outgoing calls, remove comments from lines 11 to 16 -// headers = request.requestHeaders -// if (headers.containsKey('auth_token2') == false) { -// headers.put('auth_token2', token) -// request.requestHeaders = headers -// }// Save all test step results into files -// Change the directory path in line 5 to a location where you want to store details -// then uncomment lines 5 to 10 - -// filePath = 'C:\\tempOutputDirectory\\' -// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) -// pw = new java.io.PrintWriter(fos) -// testStepResult.writeTo(pw) -// pw.close() -// fos.close() \ No newline at end of file From c5245909a3d1e0b5318c932218dc178ecab28ca8 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:45:13 +0530 Subject: [PATCH 36/51] Delete API/Activities/DataDriven-using-JDBC.xml --- API/Activities/DataDriven-using-JDBC.xml | 26 ------------------------ 1 file changed, 26 deletions(-) delete mode 100644 API/Activities/DataDriven-using-JDBC.xml diff --git a/API/Activities/DataDriven-using-JDBC.xml b/API/Activities/DataDriven-using-JDBC.xml deleted file mode 100644 index 6fca36565f..0000000000 --- a/API/Activities/DataDriven-using-JDBC.xml +++ /dev/null @@ -1,26 +0,0 @@ - -http://ipwhois.appIPIPTEMPLATEIPapplication/json; charset=utf-8200json:Responsehttp://ipwhois.appIPSEQUENTIALtruetruefalsetruetrue<xml-fragment/>com.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybqFST ConnectionSelect * FROM petData;falsetruetruepetIDpetNamepetStatustruefalse101-1COMPIP0falseIPv4falsefalseIPtruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200No AuthorizationNo AuthorizationIPcityTransferResponse$['city']city_nameData SinkJSONPATHtruelatitudeResponseGet Request$['latitude']latitudeData SinkJSONPATHtruelongitudeResponseGet Request$['longitude']longitudeData SinkJSONPATHtruecom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybqFST Connection( Default environment )insert into coordinates(city_name,latitude,longitude) -values (?,?,?);falsecity_nameQuitolatitude-0.1806532longitude-78.4678382Data SourceGet RequesttrueFST Connectioncom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybq// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls -// This code is often used for adding custom authentication to ReadyAPI functional tests - -// If hardcoding the token, uncomment and change line 5 -// token = '4567' - -// If your token is parameterized in Project level custom property, uncomment line 8 -// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() - -// To modify all outgoing calls, remove comments from lines 11 to 16 -// headers = request.requestHeaders -// if (headers.containsKey('auth_token2') == false) { -// headers.put('auth_token2', token) -// request.requestHeaders = headers -// }// Save all test step results into files -// Change the directory path in line 5 to a location where you want to store details -// then uncomment lines 5 to 10 - -// filePath = 'C:\\tempOutputDirectory\\' -// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) -// pw = new java.io.PrintWriter(fos) -// testStepResult.writeTo(pw) -// pw.close() -// fos.close() \ No newline at end of file From 48c5e73f8a43190e4dbecb3a7cbb34ba0d0f6139 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:45:25 +0530 Subject: [PATCH 37/51] Delete API/Activities/DataDrivenTest-External-source.xml --- .../DataDrivenTest-External-source.xml | 25 ------------------- 1 file changed, 25 deletions(-) delete mode 100644 API/Activities/DataDrivenTest-External-source.xml diff --git a/API/Activities/DataDrivenTest-External-source.xml b/API/Activities/DataDrivenTest-External-source.xml deleted file mode 100644 index 94c997451d..0000000000 --- a/API/Activities/DataDrivenTest-External-source.xml +++ /dev/null @@ -1,25 +0,0 @@ - -http://ipwhois.appIPIPTEMPLATEIPapplication/json; charset=utf-8200json:Responsehttp://ipwhois.appNo AuthorizationNo AuthorizationIPSEQUENTIALC:/Users/0019TE744/Downloads/FST_API/TextFile.txt,trueCp1252falsetruetrueIPaddresstruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200$['country']"India"falsefalsefalseNo AuthorizationNo AuthorizationIPDataSourceRequest 1trueC:/Users/0019TE744/Downloads/FST_API/Ips_Excel.xlsxA2falsefalsetruetrueIP Addresstruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200$['country']"India"falsefalsefalseNo AuthorizationNo AuthorizationIPData SourceRequest 1trueFST_Connectioncom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybq// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls -// This code is often used for adding custom authentication to ReadyAPI functional tests - -// If hardcoding the token, uncomment and change line 5 -// token = '4567' - -// If your token is parameterized in Project level custom property, uncomment line 8 -// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() - -// To modify all outgoing calls, remove comments from lines 11 to 16 -// headers = request.requestHeaders -// if (headers.containsKey('auth_token2') == false) { -// headers.put('auth_token2', token) -// request.requestHeaders = headers -// }// Save all test step results into files -// Change the directory path in line 5 to a location where you want to store details -// then uncomment lines 5 to 10 - -// filePath = 'C:\\tempOutputDirectory\\' -// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) -// pw = new java.io.PrintWriter(fos) -// testStepResult.writeTo(pw) -// pw.close() -// fos.close() \ No newline at end of file From f255774f27e5c426002b9df615f8b8d1ba46190a Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:46:37 +0530 Subject: [PATCH 38/51] Add files via upload --- API/Activities/CalcultaorSOAP.xml | 291 ++++++++++++++++++ API/Activities/DataDriven-using-JDBC.xml | 26 ++ .../DataDrivenTest-External-source.xml | 25 ++ 3 files changed, 342 insertions(+) create mode 100644 API/Activities/CalcultaorSOAP.xml create mode 100644 API/Activities/DataDriven-using-JDBC.xml create mode 100644 API/Activities/DataDrivenTest-External-source.xml diff --git a/API/Activities/CalcultaorSOAP.xml b/API/Activities/CalcultaorSOAP.xml new file mode 100644 index 0000000000..f26c5aad72 --- /dev/null +++ b/API/Activities/CalcultaorSOAP.xml @@ -0,0 +1,291 @@ + +http://www.dneonline.com/calculator.asmx?wsdl + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Adds two integers. This is a test WebService. ©DNE Online + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]>http://schemas.xmlsoap.org/wsdl/http://www.dneonline.com/calculator.asmxUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationUTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + ?\r + ?\r + \r + \r +]]>No AuthorizationNo AuthorizationSEQUENTIALCalculatorSoap12Add<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + 25\r + 5\r + \r + \r +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:AddResult30falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Divide<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx\r + \r + \r + \r + 20\r + 2\r + \r + \r +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:DivideResult10falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Multiply<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx + + + + 10 + 2 + + +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:MultiplyResult20falsefalsefalseNo AuthorizationNo AuthorizationCalculatorSoap12Subtract<xml-fragment/>UTF-8http://www.dneonline.com/calculator.asmx + + + + 10 + 2 + + +]]>200declare namespace ns1='http://tempuri.org/'; + +//ns1:SubtractResult8falsefalsefalseNo AuthorizationNo Authorization0aee0df6-d8ef-4dea-8904-a9abb0007bedNONE52e98521-e8ce-4191-b0ec-f59cf9d969b3NONE30970bb8-502b-4b91-9542-18b3ce30f22aNONE25003ab1-7200-4c65-abfe-6f82e6c9102aNONE// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// }// Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() \ No newline at end of file diff --git a/API/Activities/DataDriven-using-JDBC.xml b/API/Activities/DataDriven-using-JDBC.xml new file mode 100644 index 0000000000..6fca36565f --- /dev/null +++ b/API/Activities/DataDriven-using-JDBC.xml @@ -0,0 +1,26 @@ + +http://ipwhois.appIPIPTEMPLATEIPapplication/json; charset=utf-8200json:Responsehttp://ipwhois.appIPSEQUENTIALtruetruefalsetruetrue<xml-fragment/>com.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybqFST ConnectionSelect * FROM petData;falsetruetruepetIDpetNamepetStatustruefalse101-1COMPIP0falseIPv4falsefalseIPtruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200No AuthorizationNo AuthorizationIPcityTransferResponse$['city']city_nameData SinkJSONPATHtruelatitudeResponseGet Request$['latitude']latitudeData SinkJSONPATHtruelongitudeResponseGet Request$['longitude']longitudeData SinkJSONPATHtruecom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybqFST Connection( Default environment )insert into coordinates(city_name,latitude,longitude) +values (?,?,?);falsecity_nameQuitolatitude-0.1806532longitude-78.4678382Data SourceGet RequesttrueFST Connectioncom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybq// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// }// Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() \ No newline at end of file diff --git a/API/Activities/DataDrivenTest-External-source.xml b/API/Activities/DataDrivenTest-External-source.xml new file mode 100644 index 0000000000..94c997451d --- /dev/null +++ b/API/Activities/DataDrivenTest-External-source.xml @@ -0,0 +1,25 @@ + +http://ipwhois.appIPIPTEMPLATEIPapplication/json; charset=utf-8200json:Responsehttp://ipwhois.appNo AuthorizationNo AuthorizationIPSEQUENTIALC:/Users/0019TE744/Downloads/FST_API/TextFile.txt,trueCp1252falsetruetrueIPaddresstruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200$['country']"India"falsefalsefalseNo AuthorizationNo AuthorizationIPDataSourceRequest 1trueC:/Users/0019TE744/Downloads/FST_API/Ips_Excel.xlsxA2falsefalsetruetrueIP Addresstruefalse<xml-fragment/>http://ipwhois.apphttp://ipwhois.app/json/200$['country']"India"falsefalsefalseNo AuthorizationNo AuthorizationIPData SourceRequest 1trueFST_Connectioncom.mysql.jdbc.Driverjdbc:mysql://db4free.net:3306/fstm1db?user=fstm1db&password=PASS_VALUE6Y6NowPybq// Sample event script to add custom HTTP header to all outgoing REST, SOAP and HTTP(S) calls +// This code is often used for adding custom authentication to ReadyAPI functional tests + +// If hardcoding the token, uncomment and change line 5 +// token = '4567' + +// If your token is parameterized in Project level custom property, uncomment line 8 +// token = request.parent.testCase.testSuite.project.getProperty('auth_token').getValue() + +// To modify all outgoing calls, remove comments from lines 11 to 16 +// headers = request.requestHeaders +// if (headers.containsKey('auth_token2') == false) { +// headers.put('auth_token2', token) +// request.requestHeaders = headers +// }// Save all test step results into files +// Change the directory path in line 5 to a location where you want to store details +// then uncomment lines 5 to 10 + +// filePath = 'C:\\tempOutputDirectory\\' +// fos = new java.io.FileOutputStream(filePath + testStepResult.testStep.label + '.txt', true) +// pw = new java.io.PrintWriter(fos) +// testStepResult.writeTo(pw) +// pw.close() +// fos.close() \ No newline at end of file From 092849f07aa5f12878f8d6d043da7184c3af39df Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:48:06 +0530 Subject: [PATCH 39/51] Delete Rest_Assured/Activities/Activity1.java --- Rest_Assured/Activities/Activity1.java | 81 -------------------------- 1 file changed, 81 deletions(-) delete mode 100644 Rest_Assured/Activities/Activity1.java diff --git a/Rest_Assured/Activities/Activity1.java b/Rest_Assured/Activities/Activity1.java deleted file mode 100644 index 121252aa71..0000000000 --- a/Rest_Assured/Activities/Activity1.java +++ /dev/null @@ -1,81 +0,0 @@ -package activities; - -import java.util.HashMap; -import java.util.Map; -import static io.restassured.RestAssured.given; -import static org.hamcrest.Matchers.equalTo; - -import org.testng.annotations.Test; - -public class Activity1 { - - @Test(priority = 1) - - public void addNewPet() - { - Map reqBody = new HashMap<>(); - reqBody.put("id" , 77232); - reqBody.put("name" , "Riley"); - reqBody.put("status" , "alive"); - - // send request , get response , assert response - - given() - .baseUri("https://petstore.swagger.io/v2/pet") - .header("Content-Type" , "application/json") - .body(reqBody) - - .when() - .post() - - .then() - .log().all() - .statusCode(200) - .body("name", equalTo("Riley")) - .body("status", equalTo("alive")); - - } - - @Test(priority = 2) - public void getPetInfo() - { - - given() - .baseUri("https://petstore.swagger.io/v2/pet") - .header("Content-Type" , "application/json") - .pathParam("petId", 77232) - .log().all() - - .when() - .get("/{petId}") - - .then() - .log().all() - .statusCode(200) - .body("name", equalTo("Riley")) - .body("status", equalTo("alive")); - - } - - - - @Test(priority = 3) - public void deletePet() - { - - given() - .baseUri("https://petstore.swagger.io/v2/pet") - .header("Content-Type" , "application/json") - .pathParam("petId", 77232) - .log().all() - - .when() - .delete("/{petId}") - - .then() - .log().all() - .statusCode(200) - .body("message", equalTo("77232")); - } -} - From e9c00c2e8ffcc782077a51a143f39ea55b428e0c Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:48:22 +0530 Subject: [PATCH 40/51] Add files via upload --- Rest_Assured/Activities/Activity1.java | 76 ++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 Rest_Assured/Activities/Activity1.java diff --git a/Rest_Assured/Activities/Activity1.java b/Rest_Assured/Activities/Activity1.java new file mode 100644 index 0000000000..157d22b361 --- /dev/null +++ b/Rest_Assured/Activities/Activity1.java @@ -0,0 +1,76 @@ +package activities; + +import java.util.HashMap; +import java.util.Map; + +import org.testng.annotations.Test; +import static io.restassured.RestAssured.given; +import static org.hamcrest.Matchers.equalTo; + +public class Activity1 { + + + @Test(priority = 1) + public void addNewPet() + { + Map reqBody = new HashMap<>(); + reqBody.put("Id", 77232); + reqBody.put("name","Riley"); + reqBody.put("status", "alive"); + + given() + .baseUri("https://petstore.swagger.io/v2/pet") + .header("content-type","application/json") + .body(reqBody) + .log().all() + + .when() + .post() + + .then() + .log().all() + .statusCode(200) + .body("name", equalTo("Riley")) + .body("status", equalTo("alive")); + } + + @Test(priority = 2) + public void getPetInfo() + { + given() + .baseUri("https://petstore.swagger.io/v2/pet") + .header("content-type","application/json") + .pathParam("petId", 77232) + .log().all() + + .when() + .get("/{petId}") + + .then() + .log().all() + .statusCode(200) + .body("name", equalTo("Riley")) + .body("status", equalTo("alive")); + + } + @Test(priority = 3) + public void deletePet() + { + given() + .baseUri("https://petstore.swagger.io/v2/pet") + .header("content-type","application/json") + .pathParam("petId", 77232) + .log().all() + + .when() + .delete("/{petId}") + + .then() + .log().all() + .statusCode(200) + .body("message",equalTo(77232)); + + + } + +} From c729c7f963d1586ddb4e2550802292a897f5766d Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:49:51 +0530 Subject: [PATCH 41/51] Delete Appium/Activities/Activity1.java --- Appium/Activities/Activity1.java | 75 -------------------------------- 1 file changed, 75 deletions(-) delete mode 100644 Appium/Activities/Activity1.java diff --git a/Appium/Activities/Activity1.java b/Appium/Activities/Activity1.java deleted file mode 100644 index 87e377601d..0000000000 --- a/Appium/Activities/Activity1.java +++ /dev/null @@ -1,75 +0,0 @@ -package activities; - -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; - -import org.testng.Assert; -import org.testng.annotations.AfterClass; -import org.testng.annotations.BeforeClass; -import org.testng.annotations.Test; - -import io.appium.java_client.AppiumBy; -import io.appium.java_client.AppiumDriver; -import io.appium.java_client.android.AndroidDriver; -import io.appium.java_client.android.options.UiAutomator2Options; -import io.appium.java_client.ios.options.XCUITestOptions; - -public class Activity1 { - AppiumDriver driver; - - //setup appium setup - @BeforeClass - public void androidSetUp() throws MalformedURLException, URISyntaxException - { - UiAutomator2Options options = new UiAutomator2Options(). - setPlatformName("android"). - setAutomationName("UiAutomator2"). - //setApp("path/to/file.apk"). - setAppPackage("com.google.android.calculator"). - setAppActivity("com.android.calculator2.Calculator"). - noReset(); - - URL serverURL = new URI("http://127.0.0.1:4723").toURL(); - - driver = new AndroidDriver(serverURL , options); - - } - - @Test - public void multiplyTest() { - // Perform the calculation - driver.findElement(AppiumBy.id("digit_6")).click(); - driver.findElement(AppiumBy.accessibilityId("multiply")).click(); - driver.findElement(AppiumBy.id("digit_7")).click(); - driver.findElement(AppiumBy.accessibilityId("equals")).click(); - - // Find the result - String result = driver.findElement(AppiumBy.id("result")).getText(); - - // Assertion - Assert.assertEquals(result, "42"); - } - - - @AfterClass - public void tearDown() - { - driver.quit(); - } - - /*@BeforeClass - public void IOSSetUp() - { - XCUITestOptions options = new XCUITestOptions(). - setPlatformName("ios"). - setAutomationName("XCUITest"). - setApp("path/to/file.ipa"). - noReset(); - }*/ - - - //Set Appium server URL - -} From c5b5dcc3c86002f8fe524c50fdab3679eb320130 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:50:06 +0530 Subject: [PATCH 42/51] Delete Appium/Activities/Activity4.java --- Appium/Activities/Activity4.java | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 Appium/Activities/Activity4.java diff --git a/Appium/Activities/Activity4.java b/Appium/Activities/Activity4.java deleted file mode 100644 index 08f42aae79..0000000000 --- a/Appium/Activities/Activity4.java +++ /dev/null @@ -1,5 +0,0 @@ -package activities; - -public class Activity4 { - -} From f2589020aaf02255583e2dbf2f492508ee376f80 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:50:19 +0530 Subject: [PATCH 43/51] Delete Appium/Activities/Activity5.java --- Appium/Activities/Activity5.java | 86 -------------------------------- 1 file changed, 86 deletions(-) delete mode 100644 Appium/Activities/Activity5.java diff --git a/Appium/Activities/Activity5.java b/Appium/Activities/Activity5.java deleted file mode 100644 index 473772826d..0000000000 --- a/Appium/Activities/Activity5.java +++ /dev/null @@ -1,86 +0,0 @@ -package activities; - -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; -import java.time.Duration; - -import org.openqa.selenium.support.ui.ExpectedConditions; -import org.openqa.selenium.support.ui.WebDriverWait; -import org.testng.Assert; -import org.testng.annotations.AfterClass; -import org.testng.annotations.BeforeClass; -import org.testng.annotations.Test; - -import io.appium.java_client.AppiumBy; -import io.appium.java_client.AppiumDriver; -import io.appium.java_client.android.AndroidDriver; - -import io.appium.java_client.android.nativekey.AndroidKey; - -import io.appium.java_client.android.nativekey.KeyEvent; -import io.appium.java_client.android.nativekey.PressesKey; -import io.appium.java_client.android.options.UiAutomator2Options; - -public class Activity5 { - - AppiumDriver driver; - WebDriverWait wait; - - @BeforeClass - public void setup() throws MalformedURLException, URISyntaxException { - - UiAutomator2Options options = new UiAutomator2Options() - .setAutomationName("UiAutomator2") - .setPlatformName("android") - .setAppPackage("com.google.android.apps.messaging") - .setAppActivity(".ui.ConversationListActivity") - .noReset(); - - URL serverURL = new URI("http://127.0.0.1:4723").toURL(); - - //Initialize driver - driver = new AndroidDriver(serverURL, options); - - wait = new WebDriverWait(driver,Duration.ofSeconds(10)); - } - - @Test - public void sendMessage() { - - driver.findElement(AppiumBy.id("com.google.android.apps.messaging:id/start_chat_fab")).click(); - - - wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.TextView[@text=\"Type names, phone numbers, or emails\"]"))); - // Find the element to add recipient - - driver.findElement(AppiumBy.className("android.widget.TextView")).sendKeys("18282832912"); - - // Press ENTER - - ((PressesKey) driver).pressKey(new KeyEvent(AndroidKey.ENTER)); - // Wait for textbox to appear - - wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.id("compose_message_text"))); - - // Enter text to send - - driver.findElement(AppiumBy.id("compose_message_text")).sendKeys("Hello from Appium"); - - // Press Send - - driver.findElement(AppiumBy.accessibilityId("Send SMS")).click(); - // Assertion - - String messageTextSent = driver.findElement(AppiumBy.id("message_text")).getText(); - - Assert.assertEquals(messageTextSent, "Hello from Appium"); - - } - - @AfterClass - public void closure() { - - } -} From 73e6e2bb6338c5f85370701d0978eecafc968703 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:50:31 +0530 Subject: [PATCH 44/51] Delete Appium/Activities/Activity6.java --- Appium/Activities/Activity6.java | 94 -------------------------------- 1 file changed, 94 deletions(-) delete mode 100644 Appium/Activities/Activity6.java diff --git a/Appium/Activities/Activity6.java b/Appium/Activities/Activity6.java deleted file mode 100644 index 6eba086f79..0000000000 --- a/Appium/Activities/Activity6.java +++ /dev/null @@ -1,94 +0,0 @@ -package activities; -import static org.testng.Assert.assertTrue; -import static activities.ActionsBase.doSwipe; -import org.openqa.selenium.Dimension; -import org.openqa.selenium.Point; -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; -import java.time.Duration; - -import org.openqa.selenium.support.ui.ExpectedConditions; -import org.openqa.selenium.support.ui.WebDriverWait; -import org.testng.annotations.AfterClass; -import org.testng.annotations.BeforeClass; -import org.testng.annotations.Test; - -import io.appium.java_client.AppiumBy; -import io.appium.java_client.android.AndroidDriver; -import io.appium.java_client.android.options.UiAutomator2Options; - -public class Activity6 { - AndroidDriver driver; - WebDriverWait wait; - - @BeforeClass - public void setUp() throws MalformedURLException, URISyntaxException { - // Desired Capabilities - UiAutomator2Options options = new UiAutomator2Options(); - options.setPlatformName("Android"); - options.setAutomationName("UiAutomator2"); - options.setAppPackage("com.android.chrome"); - options.setAppActivity("com.google.android.apps.chrome.Main"); - options.noReset(); - - // Server URL - URL serverURL = new URI("http://localhost:4723").toURL(); - - // Driver initialization - driver = new AndroidDriver(serverURL, options); - wait = new WebDriverWait(driver, Duration.ofSeconds(20)); - - // Open Selenium page - driver.get("https://training-support.net/webelements/sliders"); - } - - @Test - public void volume75Test() { - // Wait for page to load - wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); - // Get the size of the screen - Dimension dims = driver.manage().window().getSize(); - // Set the start and end points - Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .72)); - Point end = new Point((int) (dims.getWidth() * .665), (int) (dims.getHeight() * .72)); - // Perform swipe - doSwipe(driver, start, end, 2000); - - // Get the volume level - String volumeText = driver - .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) - .getText(); - - // Assertions - assertTrue(volumeText.contains("75%")); - } - - @Test - public void volume25Test() { - // Wait for page to load - wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); - // Get the size of the screen - Dimension dims = driver.manage().window().getSize(); - // Set the start and end points - Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .72)); - Point end = new Point((int) (dims.getWidth() * .333), (int) (dims.getHeight() * .72)); - // Perform swipe - doSwipe(driver, start, end, 2000); - - // Get the volume level - String volumeText = driver - .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) - .getText(); - - // Assertions - assertTrue(volumeText.contains("25%")); - } - - @AfterClass - public void tearDown() { - // Close the browser - driver.quit(); - } -} \ No newline at end of file From ff79f4186ee24af6db635738f704ff4795415477 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:50:45 +0530 Subject: [PATCH 45/51] Delete Appium/Activities/Activity8.xml --- Appium/Activities/Activity8.xml | 24 ------------------------ 1 file changed, 24 deletions(-) delete mode 100644 Appium/Activities/Activity8.xml diff --git a/Appium/Activities/Activity8.xml b/Appium/Activities/Activity8.xml deleted file mode 100644 index 5d0a8e5be5..0000000000 --- a/Appium/Activities/Activity8.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file From 2b279861672eea803e8576d7457610ea4ec4fafb Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:51:12 +0530 Subject: [PATCH 46/51] Add files via upload --- Appium/Activities/Activity1.java | 75 +++++++++++++++++ Appium/Activities/Activity4.java | 128 +++++++++++++++++++++++++++++ Appium/Activities/Activity5.java | 75 +++++++++++++++++ Appium/Activities/Activity6.java | 94 +++++++++++++++++++++ Appium/Activities/Activity8.java | 137 +++++++++++++++++++++++++++++++ 5 files changed, 509 insertions(+) create mode 100644 Appium/Activities/Activity1.java create mode 100644 Appium/Activities/Activity4.java create mode 100644 Appium/Activities/Activity5.java create mode 100644 Appium/Activities/Activity6.java create mode 100644 Appium/Activities/Activity8.java diff --git a/Appium/Activities/Activity1.java b/Appium/Activities/Activity1.java new file mode 100644 index 0000000000..87e377601d --- /dev/null +++ b/Appium/Activities/Activity1.java @@ -0,0 +1,75 @@ +package activities; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; + +import org.testng.Assert; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; +import io.appium.java_client.ios.options.XCUITestOptions; + +public class Activity1 { + AppiumDriver driver; + + //setup appium setup + @BeforeClass + public void androidSetUp() throws MalformedURLException, URISyntaxException + { + UiAutomator2Options options = new UiAutomator2Options(). + setPlatformName("android"). + setAutomationName("UiAutomator2"). + //setApp("path/to/file.apk"). + setAppPackage("com.google.android.calculator"). + setAppActivity("com.android.calculator2.Calculator"). + noReset(); + + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + driver = new AndroidDriver(serverURL , options); + + } + + @Test + public void multiplyTest() { + // Perform the calculation + driver.findElement(AppiumBy.id("digit_6")).click(); + driver.findElement(AppiumBy.accessibilityId("multiply")).click(); + driver.findElement(AppiumBy.id("digit_7")).click(); + driver.findElement(AppiumBy.accessibilityId("equals")).click(); + + // Find the result + String result = driver.findElement(AppiumBy.id("result")).getText(); + + // Assertion + Assert.assertEquals(result, "42"); + } + + + @AfterClass + public void tearDown() + { + driver.quit(); + } + + /*@BeforeClass + public void IOSSetUp() + { + XCUITestOptions options = new XCUITestOptions(). + setPlatformName("ios"). + setAutomationName("XCUITest"). + setApp("path/to/file.ipa"). + noReset(); + }*/ + + + //Set Appium server URL + +} diff --git a/Appium/Activities/Activity4.java b/Appium/Activities/Activity4.java new file mode 100644 index 0000000000..4a901aac38 --- /dev/null +++ b/Appium/Activities/Activity4.java @@ -0,0 +1,128 @@ +package activities; + +import static org.testng.Assert.assertEquals; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; + +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity3 { + + AppiumDriver driver; + WebDriverWait wait; + + @BeforeClass() + public void setUp() throws MalformedURLException, URISyntaxException { + + UiAutomator2Options options = new UiAutomator2Options() + .setAutomationName("UiAutomator2") + .setPlatformName("android") + .setAppPackage("com.vivo.calculator")//to set a package, its always goes with setAppActivity() + .setAppActivity(".Calculator") + .noReset(); + + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + //Initialize driver + driver = new AndroidDriver(serverURL, options); + + } + + @BeforeMethod + public void clearInput() { + //clears by clicking on AC on app + driver.findElement(AppiumBy.accessibilityId("Clear")).click(); + } + + @Test(priority = 1) + public void additionTest() { + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_5")).click(); + + driver.findElement(AppiumBy.accessibilityId("Plus")).click(); + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_9")).click(); + + driver.findElement(AppiumBy.accessibilityId("=")).click(); + + String res = driver.findElement(AppiumBy.id("com.vivo.calculator:id/formula")).getText(); + System.out.println("The result of addition is "+ res); + assertEquals(res, "14"); + + } + + @Test(priority = 2) + public void subTractionTest() { + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_1")).click(); + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_0")).click(); + + driver.findElement(AppiumBy.accessibilityId("Minus")).click(); + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_5")).click(); + + driver.findElement(AppiumBy.accessibilityId("=")).click(); + + String res = driver.findElement(AppiumBy.id("com.vivo.calculator:id/formula")).getText(); + System.out.println("The result of Subtraction is "+ res); + assertEquals(res, "5"); + + } + + @Test(priority = 3) + public void MultiplyTest() { + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_5")).click(); + + + driver.findElement(AppiumBy.accessibilityId("Multiply")).click(); + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_1")).click(); + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_0")).click(); + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_0")).click(); + + driver.findElement(AppiumBy.accessibilityId("=")).click(); + + String res = driver.findElement(AppiumBy.id("com.vivo.calculator:id/formula")).getText(); + System.out.println("The result of Multiplication is "+ res); + assertEquals(res, "500"); + + } + + @Test(priority = 4) + public void DivideTest() { + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_5")).click(); + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_0")).click(); + + driver.findElement(AppiumBy.accessibilityId("Divide")).click(); + + driver.findElement(AppiumBy.id("com.vivo.calculator:id/digit_2")).click(); + + driver.findElement(AppiumBy.accessibilityId("=")).click(); + + String res = driver.findElement(AppiumBy.id("com.vivo.calculator:id/formula")).getText(); + System.out.println("The result of Division is "+ res); + assertEquals(res, "25"); + + } + + @AfterClass + public void closure() { + driver.quit(); + } + +} + diff --git a/Appium/Activities/Activity5.java b/Appium/Activities/Activity5.java new file mode 100644 index 0000000000..4793efbc93 --- /dev/null +++ b/Appium/Activities/Activity5.java @@ -0,0 +1,75 @@ +package activities; + +import static org.testng.Assert.assertEquals; + +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity4 { + + AppiumDriver driver; + WebDriverWait wait; + + @BeforeClass() + public void setUp() throws MalformedURLException, URISyntaxException { + + UiAutomator2Options options = new UiAutomator2Options() + .setAutomationName("UiAutomator2") + .setPlatformName("android") + .setAppPackage("com.google.android.contacts")//to set a package, its always goes with setAppActivity() + .setAppActivity("com.android.contacts.activities.PeopleActivity") + .noReset(); + + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + //Initialize driver + driver = new AndroidDriver(serverURL, options); + + wait = new WebDriverWait(driver,Duration.ofSeconds(10)); + + } + + @Test + public void createContact() { + + driver.findElement(AppiumBy.accessibilityId("Create contact")).click(); + + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.EditText[@text=\"First name\"]"))); + //firstname + WebElement firstName = driver.findElement(AppiumBy.xpath("//android.widget.EditText[@text=\"First name\"]")); + WebElement lastName = driver.findElement(AppiumBy.xpath("//android.widget.EditText[@text=\"Last name\"]")); + WebElement PhoneNum = driver.findElement(AppiumBy.xpath("//android.widget.EditText[@text=\"+91\"]")); + + firstName.sendKeys("Test"); + lastName.sendKeys("Appium"); + PhoneNum.sendKeys("9999900000"); + + driver.findElement(AppiumBy.xpath("//android.widget.TextView[@text=\"Save\"]")).click(); + + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.id("com.google.android.contacts:id/large_title"))); + String name = driver.findElement(AppiumBy.id("com.google.android.contacts:id/large_title")).getText(); + assertEquals(name, "Test Appium"); + } + + @AfterClass + public void closure() { + + driver.quit(); + + } +} diff --git a/Appium/Activities/Activity6.java b/Appium/Activities/Activity6.java new file mode 100644 index 0000000000..6eba086f79 --- /dev/null +++ b/Appium/Activities/Activity6.java @@ -0,0 +1,94 @@ +package activities; +import static org.testng.Assert.assertTrue; +import static activities.ActionsBase.doSwipe; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity6 { + AndroidDriver driver; + WebDriverWait wait; + + @BeforeClass + public void setUp() throws MalformedURLException, URISyntaxException { + // Desired Capabilities + UiAutomator2Options options = new UiAutomator2Options(); + options.setPlatformName("Android"); + options.setAutomationName("UiAutomator2"); + options.setAppPackage("com.android.chrome"); + options.setAppActivity("com.google.android.apps.chrome.Main"); + options.noReset(); + + // Server URL + URL serverURL = new URI("http://localhost:4723").toURL(); + + // Driver initialization + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(20)); + + // Open Selenium page + driver.get("https://training-support.net/webelements/sliders"); + } + + @Test + public void volume75Test() { + // Wait for page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); + // Get the size of the screen + Dimension dims = driver.manage().window().getSize(); + // Set the start and end points + Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .72)); + Point end = new Point((int) (dims.getWidth() * .665), (int) (dims.getHeight() * .72)); + // Perform swipe + doSwipe(driver, start, end, 2000); + + // Get the volume level + String volumeText = driver + .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) + .getText(); + + // Assertions + assertTrue(volumeText.contains("75%")); + } + + @Test + public void volume25Test() { + // Wait for page to load + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); + // Get the size of the screen + Dimension dims = driver.manage().window().getSize(); + // Set the start and end points + Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .72)); + Point end = new Point((int) (dims.getWidth() * .333), (int) (dims.getHeight() * .72)); + // Perform swipe + doSwipe(driver, start, end, 2000); + + // Get the volume level + String volumeText = driver + .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) + .getText(); + + // Assertions + assertTrue(volumeText.contains("25%")); + } + + @AfterClass + public void tearDown() { + // Close the browser + driver.quit(); + } +} \ No newline at end of file diff --git a/Appium/Activities/Activity8.java b/Appium/Activities/Activity8.java new file mode 100644 index 0000000000..c90c21322c --- /dev/null +++ b/Appium/Activities/Activity8.java @@ -0,0 +1,137 @@ +package activities; + + +import static org.testng.Assert.assertTrue; +import static activities.ActionsBase.doSwipe; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.time.Duration; + +import org.openqa.selenium.Dimension; +import org.openqa.selenium.Point; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.annotations.AfterClass; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +import io.appium.java_client.AppiumBy; +import io.appium.java_client.AppiumDriver; +import io.appium.java_client.android.AndroidDriver; +import io.appium.java_client.android.options.UiAutomator2Options; + +public class Activity6{ + +AppiumDriver driver; +WebDriverWait wait; + + @BeforeClass + public void andriodSetup() throws MalformedURLException, URISyntaxException { + //set desired capabilities + UiAutomator2Options options = new UiAutomator2Options() + .setPlatformName("andriod")//Mandatory + .setAutomationName("UiAutomator2")//Mandatory + .setAppPackage("com.android.chrome")//to set a package, its always goes with setAppActivity() + .setAppActivity("com.google.android.apps.chrome.Main")//to set a class, its always goes with setAppPackage() + .noReset(); //it will not reset the appium + + //set appium url + URL serverURL = new URI("http://127.0.0.1:4723").toURL(); + + + //Initialize driver + driver = new AndroidDriver(serverURL, options); + wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + //to open url + driver.get("https://training-support.net/webelements/sliders/"); + +} + + @Test(priority = 1) + public void volume75Test() { + + // Wait for page to load + + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); + + // Get the size of the screen + + Dimension dims = driver.manage().window().getSize(); + + // Set the start and end points + + Point start = new Point((int) (dims.getWidth() * .51), (int) (dims.getHeight() * .77)); + Point end = new Point((int) (dims.getWidth() * .67), (int) (dims.getHeight() * .77)); + + // Perform swipe + + doSwipe(driver, start, end, 2000); + + // Get the volume level + + String volumeText = driver + + .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) + + .getText(); + + // Assertions + + assertTrue(volumeText.contains("75%")); + + } + @Test(priority = 2) + + public void volume25Test() { + + // Wait for page to load + + wait.until(ExpectedConditions.elementToBeClickable(AppiumBy.xpath("//android.widget.SeekBar"))); + + // Get the size of the screen + + Dimension dims = driver.manage().window().getSize(); + + // Set the start and end points + + Point start = new Point((int) (dims.getWidth() * .50), (int) (dims.getHeight() * .77)); + + Point end = new Point((int) (dims.getWidth() * .33), (int) (dims.getHeight() * .77)); + + // Perform swipe + + doSwipe(driver, start, end, 2000); + + + + // Get the volume level + + String volumeText = driver + + .findElement(AppiumBy.xpath("//android.view.View/android.widget.TextView[contains(@text, '%')]")) + + .getText(); + + + + // Assertions + + assertTrue(volumeText.contains("25%")); + + } + + + + @AfterClass + + public void tearDown() { + + // Close the browser + + driver.quit(); + + } + +} From feb204286595390c15642f7ed181c98651ee09bb Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:52:13 +0530 Subject: [PATCH 47/51] Delete Git/Activities/GitClone.png --- Git/Activities/GitClone.png | Bin 81214 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Git/Activities/GitClone.png diff --git a/Git/Activities/GitClone.png b/Git/Activities/GitClone.png deleted file mode 100644 index e1fc28f7c71b950566613fe1da343b9a9d055cc4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81214 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

    & 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‹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 From afe55b3c35d425d97bffc829f3de4e119d424d37 Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:52:28 +0530 Subject: [PATCH 48/51] Delete Git/Activities/GitPush.png --- Git/Activities/GitPush.png | Bin 110445 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Git/Activities/GitPush.png diff --git a/Git/Activities/GitPush.png b/Git/Activities/GitPush.png deleted file mode 100644 index ea83ca40b935703f1f8fbe5a2532f134223552ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110445 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

      #r4glYXka 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 From f935c3f5da9174d1b774e9863e4ebfb179843dac Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:52:39 +0530 Subject: [PATCH 49/51] Delete Git/Activities/GithubSSHkeys.png --- Git/Activities/GithubSSHkeys.png | Bin 39053 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Git/Activities/GithubSSHkeys.png diff --git a/Git/Activities/GithubSSHkeys.png b/Git/Activities/GithubSSHkeys.png deleted file mode 100644 index 48644bf70e0689f6f83bb1c2dc4f50148365bd1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39053 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 vz>%%W@6CW8{= Date: Wed, 30 Apr 2025 21:52:52 +0530 Subject: [PATCH 50/51] Delete Git/Activities/sshkeys.png --- Git/Activities/sshkeys.png | Bin 50437 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Git/Activities/sshkeys.png diff --git a/Git/Activities/sshkeys.png b/Git/Activities/sshkeys.png deleted file mode 100644 index f2adbabbf4984172ad0c56ef614d793a4580b4ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50437 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 z z=mLr+U41B4onf(l_Lf^nc8%J`xGV-<1>wbgWhfKY^n#0@s0HkTYkmm73@fBVEBvLA zX;P9J>##C2@9Ec~&35XU{R)*;5*teBS5M6y7mt6CH!^B{Q+;J;-eBQ2-%4x^yW1Df z3Gp$@=J(4>tchn`RWLrKj?Mt*-p~pE#T)5u&Y`ta^hFMzs$k%_cqmvP3KwS!=u5GXT%C0m#Er z(@y!H8Vf;Nqn_6zfssJlnn2zEmCaw~X;o0V%;QS6eCpf{-a#37h=bGZx9Pi>l0gGdfzjTu}^l7OQJakyNN$w|uWOVfA1AvB{#9tq+#KQSxv{3oY+go#k!u+0XAMij zm_)7|{kmFemrajW4flz<2VXH&s@c2|_ru!S>g(fDLy)BRPjGfvU<`6o{xTwr&{9z? z_Yt8YdB#Lan4`G+-tw6R{T(njx6UtTrsJhGeFpIHoS8SXPe%XDMjI zP~|pBGaO$?qzKOh=b~GwRCSH#Z&wIYvOnaQQ>XR@tf;i7E21iB;Kp-*E{~D0(A>~; zx{58)g9oMT#YH9RzRfV7*H>lShVpE6e}QGv?j7YlQVCgVvP*Qcvo#DQ`E1X+oT$g~ z-t6wJwkJXMFO)y`^2sVWYv`hjct*^h@M!d*AMx{06PWTP&H^QJb|N|`|F2h=RqxwG z3qCG)5uuLk8mY_gay?ymZC_>-%KbC8% zD{h^!sU@+PsklypDfWTKMCO=Ed_4C?k zB=Q3I>{Z)En9+*53kclpSM~bde65t$n6$3V=l2Eh38`qb>f5MWc6j{7^{g$wTvRG- z8i{LAW4a8toP@ij%^UwLf{7(s_}|Du4Pf7dF6S5U49eI{-hor2+v`fpcT#B93+|E) z<{HLVTI7}87(-i%-rc+6s=v{HnM()8So4l4Szm1yg8sE`NR><%vuqvZ zkJ+CKBI7QQT=k)msXK7W9}Ghu8-knFjC&TMtV8R0_>-A#9*1cAP(%i%Xz}

      Nqlyk11_m1wc-qo&9fL6R5(J$u94Ko{ND<DM5 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 MUPG?*`D@?*0J9FL#sB~S From a8a696a94bd1e780cd065074c36b1a108e53c11b Mon Sep 17 00:00:00 2001 From: MalliKGownivari Date: Wed, 30 Apr 2025 21:55:15 +0530 Subject: [PATCH 51/51] Add files via upload --- Git/Activities/Git evidence.docx | Bin 0 -> 174670 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Git/Activities/Git evidence.docx diff --git a/Git/Activities/Git evidence.docx b/Git/Activities/Git evidence.docx new file mode 100644 index 0000000000000000000000000000000000000000..66539b5b3620372a97e8d19b5a18236a2f0cbe0c GIT binary patch literal 174670 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 MeV7V>z6