Best SeLion code snippet using com.paypal.selion.platform.dataprovider.impl.ExcelDataProviderImpl.getDataByKeys
Source:ExcelDataProviderTest.java
...177 dataSource.getDataByIndex("2~3");178 }179 @Test(groups = "unit")180 public void testGetExcelRowsWithKeys() {181 Object[][] allUsers = dataSource.getDataByKeys(new String[] { "tom", "binh" });182 List<String> fetchedNames = transformExcelDataIntoList(allUsers);183 assertTrue(arrayComparer(new String[] { "Thomas", "binh" }, fetchedNames.toArray()), assertFailedMsg);184 }185 @Test(expectedExceptions = { DataProviderException.class }, groups = "unit")186 public void testGetExcelRowsWithInvalidKeys() {187 dataSource.getDataByKeys(new String[] { "selion" });188 }189 @Test(groups = "unit")190 public void testGetExcelRowsWithIndividualIndexes() throws IOException {191 Object[][] allUsers = dataSource.getDataByIndex("2,3");192 List<String> fetchedNames = transformExcelDataIntoList(allUsers);193 assertTrue(arrayComparer(new String[] { "rama", "binh" }, fetchedNames.toArray()), assertFailedMsg);194 }195 @Test(groups = "unit")196 public void testGetExcelRowsWithIndividualIndexesArray() throws IOException {197 int[] index = { 2, 3 };198 Object[][] allUsers = dataSource.getDataByIndex(index);199 List<String> fetchedNames = transformExcelDataIntoList(allUsers);200 assertTrue(arrayComparer(new String[] { "rama", "binh" }, fetchedNames.toArray()), assertFailedMsg);201 }202 public List<String> transformExcelDataIntoList(Object[][] allUsers) {203 List<String> fetchedNames = new ArrayList<String>();204 for (Object[] object : allUsers) {205 USER user = (USER) object[0];206 fetchedNames.add(user.getName());207 }208 return fetchedNames;209 }210 public List<String> transformExcelDataIntoList(Iterator<Object[]> allUsers) {211 List<String> fetchedNames = new ArrayList<String>();212 while (allUsers.hasNext()) {213 USER user = (USER) allUsers.next()[0];214 fetchedNames.add(user.getName());215 }216 return fetchedNames;217 }218 @Test(groups = "unit")219 public void testGetExcelRowsWithRangeOfIndexes() throws IOException {220 Object[][] allUsers = dataSource.getDataByIndex("1-2");221 List<String> fetchedNames = transformExcelDataIntoList(allUsers);222 assertTrue(arrayComparer(new String[] { "Thomas", "rama" }, fetchedNames.toArray()), assertFailedMsg);223 }224 @Test(groups = "unit")225 public void testGetExcelRowsWithIndividualAndRangeOfIndexes() throws IOException {226 Object[][] allUsers = dataSource.getDataByIndex("1-2,4,6");227 List<String> fetchedNames = transformExcelDataIntoList(allUsers);228 assertTrue(arrayComparer(new String[] { "Thomas", "rama", "suri", "suri" }, fetchedNames.toArray()),229 assertFailedMsg);230 }231 @Test(groups = "unit", expectedExceptions = { DataProviderException.class })232 public void testGetExcelRowsWhereRowIsNull() throws IOException {233 Object[][] allUsers = dataSource.getDataByIndex("5");234 assertNull(allUsers[0][0], assertFailedMsg);235 }236 @Test(groups = "unit")237 public void testGetExcelRowsWithSimpleInclusionDataProviderFilterWithRangeOfIndexes() throws IOException {238 SimpleIndexInclusionFilter filter = new SimpleIndexInclusionFilter("1-2");239 Iterator<Object[]> allUsers = dataSource.getDataByFilter(filter);240 List<String> fetchedNames = transformExcelDataIntoList(allUsers);241 assertTrue(arrayComparer(new String[] { "Thomas", "rama" }, fetchedNames.toArray()), assertFailedMsg);242 }243 @Test(groups = "unit")244 public void testGetExcelRowsWithSimpleInclusionDataProviderFilterWithIndividualAndRangeOfIndexes()245 throws IOException {246 SimpleIndexInclusionFilter filter = new SimpleIndexInclusionFilter("1-2,4,5");247 Iterator<Object[]> allUsers = dataSource.getDataByFilter(filter);248 List<String> fetchedNames = transformExcelDataIntoList(allUsers);249 assertTrue(arrayComparer(new String[] { "Thomas", "rama", "suri", "suri" }, fetchedNames.toArray()),250 assertFailedMsg);251 }252 @Test(groups = "unit", expectedExceptions = { IllegalArgumentException.class }, expectedExceptionsMessageRegExp = "Please provide valid indexes for filtering")253 public void testGetExcelRowsWithSimpleInclusionDataProviderFilterWithNullIndexes() {254 // Passing just null will give compilation error.255 new SimpleIndexInclusionFilter((String) null);256 }257 @Test(groups = "unit")258 public void testGetExcelRowsWithSimpleInclusionDataProviderFilterWhereNoValuesReturns() throws IOException {259 SimpleIndexInclusionFilter filter = new SimpleIndexInclusionFilter("6");260 Iterator<Object[]> allUsers = dataSource.getDataByFilter(filter);261 assertFalse(allUsers.hasNext(), assertFailedMsg);262 }263 @Test(groups = "unit")264 public void testGetExcelRowsWithCustomKeyInclusionDataProviderFilterWithAccountNumber() throws IOException {265 CustomKeyFilter filter = new CustomKeyFilter("accountNumber", "78901,124567");266 Iterator<Object[]> allUsers = dataSource.getDataByFilter(filter);267 List<String> fetchedNames = transformExcelDataIntoList(allUsers);268 assertTrue(arrayComparer(new String[] { "Thomas", "binh" }, fetchedNames.toArray()), assertFailedMsg);269 }270 @Test(groups = "unit")271 public void testGetExcelRowsWithCustomKeyInclusionDataProviderFilterWithPhoneNumber() throws IOException {272 CustomKeyFilter filter = new CustomKeyFilter("phoneNumber", "1-408-666-5508,1-408-225-8040,1-714-666-0043");273 Iterator<Object[]> allUsers = dataSource.getDataByFilter(filter);274 List<String> fetchedNames = transformExcelDataIntoList(allUsers);275 assertTrue(arrayComparer(new String[] { "Thomas", "rama", "binh" }, fetchedNames.toArray()), assertFailedMsg);276 }277 @Test(groups = "unit", expectedExceptions = { IllegalArgumentException.class }, expectedExceptionsMessageRegExp = "Please specify values to use for filtering.")278 public void testGetExcelRowsWithCustomKeyInclusionDataProviderFilterWithNullFilterKeyValues() {279 @SuppressWarnings("unused")280 CustomKeyFilter filter = new CustomKeyFilter("phoneNumber", null);281 }282 @Test(groups = "unit", expectedExceptions = { IllegalArgumentException.class }, expectedExceptionsMessageRegExp = "Please specify a valid key.")283 public void testGetExcelRowsWithCustomKeyInclusionDataProviderFilterWithNullFilterKey() {284 new CustomKeyFilter(null, "1-408-666-5508,1-408-225-8040,1-714-666-0043");285 }286 private synchronized boolean arrayComparer(String[] expected, Object[] actual) {287 boolean isSame = false;288 for (int i = 0; i < expected.length; i++) {289 isSame = expected[i].matches((String) actual[i]);290 }291 return isSame;292 }293 @Test(groups = "unit")294 public void testGetAllExcelRows() throws IOException {295 Object[][] allUsers = dataSource.getAllData();296 assertNotNull(allUsers, "Data read from excel sheet failed");297 // Reduce 2 from the actual count, since the test excel sheet has 1 blank row298 // and 1 row for header299 assertEquals(allUsers.length, getRowCountFromSheet(USER.class.getSimpleName()) - 1,300 "Failed reading all rows from spreadsheet");301 }302 @Test(groups = "unit")303 public void testGetAllRowsAsHashTable() {304 Hashtable<String, Object> allValues = dataSource.getDataAsHashtable();305 assertNotNull(allValues, "Data read from excel sheet failed");306 assertEquals(allValues.size(), getRowCountFromSheet(USER.class.getSimpleName()) - 2,307 "Failed reading all rows from spreadsheet");308 }309 @Test(expectedExceptions = { IllegalArgumentException.class }, groups = "unit")310 public void testGetAllRowsAsHashTableInvalidSheetName() throws IOException {311 Student student = new ExcelDataProviderTest().new Student();312 DataResource resource = new FileSystemResource(fileName, student.getClass());313 SeLionDataProvider provider = DataProviderFactory.getDataProvider(resource);314 provider.getDataAsHashtable();315 }316 @Test(expectedExceptions = { IllegalArgumentException.class }, groups = "unit")317 public void testGetallExcelRowsInvalidSheetName() throws IOException {318 Student student = new ExcelDataProviderTest().new Student();319 DataResource resource = new FileSystemResource(fileName, student.getClass());320 SeLionDataProvider provider = DataProviderFactory.getDataProvider(resource);321 provider.getAllData();322 }323 @Test(expectedExceptions = { IllegalArgumentException.class }, groups = "unit")324 public void negativeTestsWithExcelDataProviderConstructor() throws IOException {325 new ExcelDataProviderImpl(null);326 }327 @Test(expectedExceptions = { IOException.class }, groups = "unit")328 public void negativeTestsInvalidFileName() throws IOException {329 DataResource resource = new FileSystemResource("IdontExist.xls", ColorsData.class);330 DataProviderFactory.getDataProvider(resource);331 }332 @Test(groups = "unit")333 public void getAllRowsAsHash() {334 assertNotNull(dataSource.getDataAsHashtable());335 }336 @Test(groups = "unit")337 public void getSheetAsHashByKeyTest1() {338 USER user = (USER) dataSource.getDataAsHashtable().get("binh");339 assertData(user);340 }341 @Test(groups = "unit")342 public void getSheetAsHashByKeyTest2() {343 USER user = (USER) dataSource.getDataAsHashtable().get("1");344 assertData(user);345 }346 @DataProvider(parallel = true)347 public Object[][] getExcelDataRowsByKeys() {348 return dataSource.getDataByKeys(new String[] { "1", "binh" });349 }350 @Test(dataProvider = "getExcelDataRowsByKeys", groups = "unit")351 public void getExcelDataRowsByKeys(USER myData) {352 assertData(myData);353 for (AREA_CODE eachArea : myData.getAreaCode()) {354 assertNotNull(eachArea.getAreaCode(), "Area code should not have been null");355 }356 }357 @DataProvider(parallel = true)358 public Object[][] getExcelDataRowsByIndexes() throws IOException {359 return dataSource.getDataByIndex("2, 3-4");360 }361 @Test(dataProvider = "getExcelDataRowsByIndexes", groups = "unit")362 public void getExcelDataRowsByIndexes(USER myData) {...
getDataByKeys
Using AI Code Generation
1import com.paypal.selion.platform.dataprovider.impl.ExcelDataProviderImpl;2ExcelDataProviderImpl excelDataProviderImpl = new ExcelDataProviderImpl();3excelDataProviderImpl.getDataByKeys("Sheet1", "Key1", "Key2", "Key3");4import com.paypal.selion.platform.dataprovider.annotations.DataProvider;5import com.paypal.selion.platform.dataprovider.annotations.DataProviderFileParameters;6@DataProvider(name = "ExcelDataProvider")7@DataProviderFileParameters(file = "src/test/resources/TestData.xlsx", sheetName = "Sheet1", key = "Key1", value = "Key2")8public void testMethod(String key1, String key2) {9 System.out.println("Key1: " + key1 + ", Key2: " + key2);10}11import com.paypal.selion.platform.dataprovider.annotations.DataProvider;12import com.paypal.selion.platform.dataprovider.annotations.DataProviderFileParameters;13@DataProvider(name = "ExcelDataProvider")14@DataProviderFileParameters(file = "src/test/resources/TestData.xlsx", sheetName = "Sheet1", key = "Key1", value = "Key2")15public void testMethod(String key1, String key2) {16 System.out.println("Key1: " + key1 + ", Key2: " + key2);17}18import com.paypal.selion.platform.dataprovider.annotations.DataProvider;19import com.paypal.selion.platform.dataprovider.annotations.DataProviderFileParameters;20@DataProvider(name = "ExcelDataProvider")21@DataProviderFileParameters(file = "src/test/resources/TestData.xlsx", sheetName = "Sheet1", key = "Key1", value = "Key2")
getDataByKeys
Using AI Code Generation
1ExcelDataProviderImpl excelDataProviderImpl = new ExcelDataProviderImpl();2excelDataProviderImpl.getDataByKeys("excel file path", "sheet name", "row number", "column number");3CSVDataProviderImpl csvDataProviderImpl = new CSVDataProviderImpl();4csvDataProviderImpl.getDataByKeys("csv file path", "row number", "column number");5XMLDataProviderImpl xmlDataProviderImpl = new XMLDataProviderImpl();6xmlDataProviderImpl.getDataByKeys("xml file path", "row number", "column number");7JSONDataProviderImpl jsonDataProviderImpl = new JSONDataProviderImpl();8jsonDataProviderImpl.getDataByKeys("json file path", "row number", "column number");9YamlDataProviderImpl yamlDataProviderImpl = new YamlDataProviderImpl();10yamlDataProviderImpl.getDataByKeys("yaml file path", "row number", "column number");11PropertiesDataProviderImpl propertiesDataProviderImpl = new PropertiesDataProviderImpl();12propertiesDataProviderImpl.getDataByKeys("properties file path", "row number", "column number");13XMLDataProviderImpl xmlDataProviderImpl = new XMLDataProviderImpl();14xmlDataProviderImpl.getDataByKeys("xml file path", "row number", "column number");15JSONDataProviderImpl jsonDataProviderImpl = new JSONDataProviderImpl();16jsonDataProviderImpl.getDataByKeys("json file path", "row number", "column number");
getDataByKeys
Using AI Code Generation
1ExcelDataProviderImpl excelDataProviderImpl = new ExcelDataProviderImpl("testData.xlsx","Sheet1");2List<Map<String, String>> list = excelDataProviderImpl.getDataByKeys("Test1");3for(Map<String, String> map : list){4 System.out.println(map.get("Key1"));5 System.out.println(map.get("Key2"));6}7YamlDataProviderImpl yamlDataProviderImpl = new YamlDataProviderImpl("testData.yml");8List<Map<String, String>> list = yamlDataProviderImpl.getDataByKeys("Test1");9for(Map<String, String> map : list){10 System.out.println(map.get("Key1"));11 System.out.println(map.get("Key2"));12}13PropertiesDataProviderImpl propertiesDataProviderImpl = new PropertiesDataProviderImpl("testData.properties");14List<Map<String, String>> list = propertiesDataProviderImpl.getDataByKeys("Test1");15for(Map<String, String> map : list){16 System.out.println(map.get("Key1"));17 System.out.println(map.get("Key2"));18}19JSONDataProviderImpl jsonDataProviderImpl = new JSONDataProviderImpl("testData.json");20List<Map<String, String>> list = jsonDataProviderImpl.getDataByKeys("Test1");21for(Map<String, String> map : list){22 System.out.println(map.get("Key1"));23 System.out.println(map.get("Key2"));24}25XMLDataProviderImpl xmlDataProviderImpl = new XMLDataProviderImpl("testData.xml");26List<Map<String, String>> list = xmlDataProviderImpl.getDataByKeys("Test1");27for(Map<String, String> map : list){28 System.out.println(map.get("Key1"));29 System.out.println(map.get("Key2"));30}
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!