diff --git a/src/addons/mod/survey/tests/behat/basic_usage.feature b/src/addons/mod/survey/tests/behat/basic_usage.feature index baf6555b3..b6e0755c4 100755 --- a/src/addons/mod/survey/tests/behat/basic_usage.feature +++ b/src/addons/mod/survey/tests/behat/basic_usage.feature @@ -22,46 +22,27 @@ Feature: Test basic usage of survey activity in app Scenario: Answer a survey & View results (ATTLS) Given I entered the survey activity "Test survey name" on course "Course 1" as "student1" in the app - And I press "Choose" near "1. In evaluating what someone says, I focus on the quality of their argument, not on the person who's presenting it." in the app - And I press "Strongly agree" in the app - And I press "Choose" near "2. I like playing devil's advocate - arguing the opposite of what someone is saying." in the app - And I press "Strongly disagree" in the app - And I press "Choose" near "3. I like to understand where other people are 'coming from', what experiences have led them to feel the way they do." in the app - And I press "Somewhat agree" in the app - And I press "Choose" near "4. The most important part of my education has been learning to understand people who are very different to me." in the app - And I press "Somewhat disagree" in the app - And I press "Choose" near "5. I feel that the best way for me to achieve my own identity is to interact with a variety of other people." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "6. I enjoy hearing the opinions of people who come from backgrounds different to mine - it helps me to understand how the same things can be seen in such different ways." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "7. I find that I can strengthen my own position through arguing with someone who disagrees with me." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "8. I am always interested in knowing why people say and believe the things they do." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "9. I often find myself arguing with the authors of books that I read, trying to logically figure out why they're wrong." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "10. It's important for me to remain as objective as possible when I analyze something." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "11. I try to think with people instead of against them." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "12. I have certain criteria I use in evaluating arguments." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "13. I'm more likely to try to understand someone else's opinion than to try to evaluate it." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "14. I try to point out weaknesses in other people's thinking to help them clarify their arguments." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "15. I tend to put myself in other people's shoes when discussing controversial issues, to see why they think the way they do." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "16. One could call my way of analysing things 'putting them on trial' because I am careful to consider all the evidence." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "17. I value the use of logic and reason over the incorporation of my own concerns when solving problems." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "18. I can obtain insight into opinions that differ from mine through empathy." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "19. When I encounter people whose opinions seem alien to me, I make a deliberate effort to 'extend' myself into that person, to try to see how they could have those opinions." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app - And I press "Choose" near "20. I spend time figuring out what's 'wrong' with things. For example, I'll look for something in a literary interpretation that isn't argued well enough." in the app - And I press "Somewhat agree" near "Neither agree nor disagree" in the app + And I set the following fields to these values in the app: + | 1. In evaluating what someone says, I focus on the quality of their argument, not on the person who's presenting it. | Strongly agree | + | 2. I like playing devil's advocate - arguing the opposite of what someone is saying. | Strongly disagree | + | 3. I like to understand where other people are 'coming from', what experiences have led them to feel the way they do. | Somewhat agree | + | 4. The most important part of my education has been learning to understand people who are very different to me. | Somewhat disagree | + | 5. I feel that the best way for me to achieve my own identity is to interact with a variety of other people. | Somewhat agree | + | 6. I enjoy hearing the opinions of people who come from backgrounds different to mine - it helps me to understand how the same things can be seen in such different ways. | Somewhat agree | + | 7. I find that I can strengthen my own position through arguing with someone who disagrees with me. | Somewhat agree | + | 8. I am always interested in knowing why people say and believe the things they do. | Somewhat agree | + | 9. I often find myself arguing with the authors of books that I read, trying to logically figure out why they're wrong. | Somewhat agree | + | 10. It's important for me to remain as objective as possible when I analyze something. | Somewhat agree | + | 11. I try to think with people instead of against them. | Somewhat agree | + | 12. I have certain criteria I use in evaluating arguments. | Somewhat agree | + | 13. I'm more likely to try to understand someone else's opinion than to try to evaluate it. | Somewhat agree | + | 14. I try to point out weaknesses in other people's thinking to help them clarify their arguments. | Somewhat agree | + | 15. I tend to put myself in other people's shoes when discussing controversial issues, to see why they think the way they do. | Somewhat agree | + | 16. One could call my way of analysing things 'putting them on trial' because I am careful to consider all the evidence. | Somewhat agree | + | 17. I value the use of logic and reason over the incorporation of my own concerns when solving problems. | Somewhat agree | + | 18. I can obtain insight into opinions that differ from mine through empathy. | Somewhat agree | + | 19. When I encounter people whose opinions seem alien to me, I make a deliberate effort to 'extend' myself into that person, to try to see how they could have those opinions. | Somewhat agree | + | 20. I spend time figuring out what's 'wrong' with things. For example, I'll look for something in a literary interpretation that isn't argued well enough. | Somewhat agree | And I press "Submit" in the app And I press "OK" in the app And I press "Results" in the app @@ -102,56 +83,32 @@ Feature: Test basic usage of survey activity in app | activity | name | intro | template |course | idnumber | groupmode | | survey | Test survey Colles (actual) | Test survey1 | 1 | C1 | survey1 | 0 | Given I entered the survey activity "Test survey Colles (actual)" on course "Course 1" as "student1" in the app - And I press "Choose" near "1. my learning focuses on issues that interest me." in the app - And I press "Sometimes" in the app - And I press "Choose" near "2. what I learn is important for my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "3. I learn how to improve my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "4. what I learn connects well with my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "5. I think critically about how I learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "6. I think critically about my own ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "7. I think critically about other students' ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "8. I think critically about ideas in the readings." in the app - And I press "Sometimes" in the app - And I press "Choose" near "9. I explain my ideas to other students." in the app - And I press "Sometimes" in the app - And I press "Choose" near "10. I ask other students to explain their ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "11. other students ask me to explain my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "12. other students respond to my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "13. the tutor stimulates my thinking." in the app - And I press "Sometimes" in the app - And I press "Choose" near "14. the tutor encourages me to participate." in the app - And I press "Sometimes" in the app - And I press "Choose" near "15. the tutor models good discourse." in the app - And I press "Sometimes" in the app - And I press "Choose" near "16. the tutor models critical self-reflection." in the app - And I press "Sometimes" in the app - And I press "Choose" near "17. other students encourage my participation." in the app - And I press "Sometimes" in the app - And I press "Choose" near "18. other students praise my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "19. other students value my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "20. other students empathise with my struggle to learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "21. I make good sense of other students' messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "22. other students make good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "23. I make good sense of the tutor's messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "24. the tutor makes good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "25. How long did this survey take you to complete?" in the app - And I press "under 1 min" in the app + And I set the following fields to these values in the app: + | 1. my learning focuses on issues that interest me. | Sometimes | + | 2. what I learn is important for my professional practice. | Sometimes | + | 3. I learn how to improve my professional practice. | Sometimes | + | 4. what I learn connects well with my professional practice. | Sometimes | + | 5. I think critically about how I learn. | Sometimes | + | 6. I think critically about my own ideas. | Sometimes | + | 7. I think critically about other students' ideas. | Sometimes | + | 8. I think critically about ideas in the readings. | Sometimes | + | 9. I explain my ideas to other students. | Sometimes | + | 10. I ask other students to explain their ideas. | Sometimes | + | 11. other students ask me to explain my ideas. | Sometimes | + | 12. other students respond to my ideas. | Sometimes | + | 13. the tutor stimulates my thinking. | Sometimes | + | 14. the tutor encourages me to participate. | Sometimes | + | 15. the tutor models good discourse. | Sometimes | + | 16. the tutor models critical self-reflection. | Sometimes | + | 17. other students encourage my participation. | Sometimes | + | 18. other students praise my contribution. | Sometimes | + | 19. other students value my contribution. | Sometimes | + | 20. other students empathise with my struggle to learn. | Sometimes | + | 21. I make good sense of other students' messages. | Sometimes | + | 22. other students make good sense of my messages. | Sometimes | + | 23. I make good sense of the tutor's messages. | Sometimes | + | 24. the tutor makes good sense of my messages. | Sometimes | + | 25. How long did this survey take you to complete? | under 1 min | And I press "Submit" in the app And I press "OK" in the app Then I should see "You have completed this survey" @@ -168,56 +125,32 @@ Feature: Test basic usage of survey activity in app | activity | name | intro | template | course | idnumber | groupmode | | survey | Test survey Colles (preferred) | Test survey1 | 2 | C1 | survey1 | 0 | Given I entered the survey activity "Test survey Colles (preferred)" on course "Course 1" as "student1" in the app - And I press "Choose" near "1. my learning focuses on issues that interest me." in the app - And I press "Sometimes" in the app - And I press "Choose" near "2. what I learn is important for my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "3. I learn how to improve my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "4. what I learn connects well with my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "5. I think critically about how I learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "6. I think critically about my own ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "7. I think critically about other students' ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "8. I think critically about ideas in the readings." in the app - And I press "Sometimes" in the app - And I press "Choose" near "9. I explain my ideas to other students." in the app - And I press "Sometimes" in the app - And I press "Choose" near "10. I ask other students to explain their ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "11. other students ask me to explain my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "12. other students respond to my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "13. the tutor stimulates my thinking." in the app - And I press "Sometimes" in the app - And I press "Choose" near "14. the tutor encourages me to participate." in the app - And I press "Sometimes" in the app - And I press "Choose" near "15. the tutor models good discourse." in the app - And I press "Sometimes" in the app - And I press "Choose" near "16. the tutor models critical self-reflection." in the app - And I press "Sometimes" in the app - And I press "Choose" near "17. other students encourage my participation." in the app - And I press "Sometimes" in the app - And I press "Choose" near "18. other students praise my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "19. other students value my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "20. other students empathise with my struggle to learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "21. I make good sense of other students' messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "22. other students make good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "23. I make good sense of the tutor's messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "24. the tutor makes good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "25. How long did this survey take you to complete?" in the app - And I press "under 1 min" in the app + And I set the following fields to these values in the app: + | 1. my learning focuses on issues that interest me. | Sometimes | + | 2. what I learn is important for my professional practice. | Sometimes | + | 3. I learn how to improve my professional practice. | Sometimes | + | 4. what I learn connects well with my professional practice. | Sometimes | + | 5. I think critically about how I learn. | Sometimes | + | 6. I think critically about my own ideas. | Sometimes | + | 7. I think critically about other students' ideas. | Sometimes | + | 8. I think critically about ideas in the readings. | Sometimes | + | 9. I explain my ideas to other students. | Sometimes | + | 10. I ask other students to explain their ideas. | Sometimes | + | 11. other students ask me to explain my ideas. | Sometimes | + | 12. other students respond to my ideas. | Sometimes | + | 13. the tutor stimulates my thinking. | Sometimes | + | 14. the tutor encourages me to participate. | Sometimes | + | 15. the tutor models good discourse. | Sometimes | + | 16. the tutor models critical self-reflection. | Sometimes | + | 17. other students encourage my participation. | Sometimes | + | 18. other students praise my contribution. | Sometimes | + | 19. other students value my contribution. | Sometimes | + | 20. other students empathise with my struggle to learn. | Sometimes | + | 21. I make good sense of other students' messages. | Sometimes | + | 22. other students make good sense of my messages. | Sometimes | + | 23. I make good sense of the tutor's messages. | Sometimes | + | 24. the tutor makes good sense of my messages. | Sometimes | + | 25. How long did this survey take you to complete? | under 1 min | And I press "Submit" in the app And I press "OK" in the app Then I should see "You have completed this survey" @@ -234,104 +167,56 @@ Feature: Test basic usage of survey activity in app | activity | name | intro | template | course | idnumber | groupmode | | survey | Test survey Colles (preferred and actual) | Test survey1 | 3 | C1 | survey1 | 0 | Given I entered the survey activity "Test survey Colles (preferred and actual)" on course "Course 1" as "student1" in the app - And I press "Choose" near "1. I prefer that my learning focuses on issues that interest me." in the app - And I press "Sometimes" in the app - And I press "Choose" near "2. I found that my learning focuses on issues that interest me." in the app - And I press "Sometimes" in the app - And I press "Choose" near "3. I prefer that what I learn is important for my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "4. I found that what I learn is important for my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "5. I prefer that I learn how to improve my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "6. I found that I learn how to improve my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "7. I prefer that what I learn connects well with my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "8. I found that what I learn connects well with my professional practice." in the app - And I press "Sometimes" in the app - And I press "Choose" near "9. I prefer that I think critically about how I learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "10. I found that I think critically about how I learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "11. I prefer that I think critically about my own ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "12. I found that I think critically about my own ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "13. I prefer that I think critically about other students' ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "14. I found that I think critically about other students' ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "15. I prefer that I think critically about ideas in the readings." in the app - And I press "Sometimes" in the app - And I press "Choose" near "16. I found that I think critically about ideas in the readings." in the app - And I press "Sometimes" in the app - And I press "Choose" near "17. I prefer that I explain my ideas to other students." in the app - And I press "Sometimes" in the app - And I press "Choose" near "18. I found that I explain my ideas to other students." in the app - And I press "Sometimes" in the app - And I press "Choose" near "19. I prefer that I ask other students to explain their ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "20. I found that I ask other students to explain their ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "21. I prefer that other students ask me to explain my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "22. I found that other students ask me to explain my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "23. I prefer that other students respond to my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "24. I found that other students respond to my ideas." in the app - And I press "Sometimes" in the app - And I press "Choose" near "25. I prefer that the tutor stimulates my thinking." in the app - And I press "Sometimes" in the app - And I press "Choose" near "26. I found that the tutor stimulates my thinking." in the app - And I press "Sometimes" in the app - And I press "Choose" near "27. I prefer that the tutor encourages me to participate." in the app - And I press "Sometimes" in the app - And I press "Choose" near "28. I found that the tutor encourages me to participate." in the app - And I press "Sometimes" in the app - And I press "Choose" near "29. I prefer that the tutor models good discourse." in the app - And I press "Sometimes" in the app - And I press "Choose" near "30. I found that the tutor models good discourse." in the app - And I press "Sometimes" in the app - And I press "Choose" near "31. I prefer that the tutor models critical self-reflection." in the app - And I press "Sometimes" in the app - And I press "Choose" near "32. I found that the tutor models critical self-reflection." in the app - And I press "Sometimes" in the app - And I press "Choose" near "33. I prefer that other students encourage my participation." in the app - And I press "Sometimes" in the app - And I press "Choose" near "34. I found that other students encourage my participation." in the app - And I press "Sometimes" in the app - And I press "Choose" near "35. I prefer that other students praise my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "36. I found that other students praise my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "37. I prefer that other students value my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "38. I found that other students value my contribution." in the app - And I press "Sometimes" in the app - And I press "Choose" near "39. I prefer that other students empathise with my struggle to learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "40. I found that other students empathise with my struggle to learn." in the app - And I press "Sometimes" in the app - And I press "Choose" near "41. I prefer that I make good sense of other students' messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "42. I found that I make good sense of other students' messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "43. I prefer that other students make good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "44. I found that other students make good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "45. I prefer that I make good sense of the tutor's messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "46. I found that I make good sense of the tutor's messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "47. I prefer that the tutor makes good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "48. I found that the tutor makes good sense of my messages." in the app - And I press "Sometimes" in the app - And I press "Choose" near "49. How long did this survey take you to complete?" in the app - And I press "1-2 min" in the app + And I set the following fields to these values in the app: + | 1. I prefer that my learning focuses on issues that interest me. | Sometimes | + | 2. I found that my learning focuses on issues that interest me. | Sometimes | + | 3. I prefer that what I learn is important for my professional practice. | Sometimes | + | 4. I found that what I learn is important for my professional practice. | Sometimes | + | 5. I prefer that I learn how to improve my professional practice. | Sometimes | + | 6. I found that I learn how to improve my professional practice. | Sometimes | + | 7. I prefer that what I learn connects well with my professional practice. | Sometimes | + | 8. I found that what I learn connects well with my professional practice. | Sometimes | + | 9. I prefer that I think critically about how I learn. | Sometimes | + | 10. I found that I think critically about how I learn. | Sometimes | + | 11. I prefer that I think critically about my own ideas. | Sometimes | + | 12. I found that I think critically about my own ideas. | Sometimes | + | 13. I prefer that I think critically about other students' ideas. | Sometimes | + | 14. I found that I think critically about other students' ideas. | Sometimes | + | 15. I prefer that I think critically about ideas in the readings. | Sometimes | + | 16. I found that I think critically about ideas in the readings. | Sometimes | + | 17. I prefer that I explain my ideas to other students. | Sometimes | + | 18. I found that I explain my ideas to other students. | Sometimes | + | 19. I prefer that I ask other students to explain their ideas. | Sometimes | + | 20. I found that I ask other students to explain their ideas. | Sometimes | + | 21. I prefer that other students ask me to explain my ideas. | Sometimes | + | 22. I found that other students ask me to explain my ideas. | Sometimes | + | 23. I prefer that other students respond to my ideas. | Sometimes | + | 24. I found that other students respond to my ideas. | Sometimes | + | 25. I prefer that the tutor stimulates my thinking. | Sometimes | + | 26. I found that the tutor stimulates my thinking. | Sometimes | + | 27. I prefer that the tutor encourages me to participate. | Sometimes | + | 28. I found that the tutor encourages me to participate. | Sometimes | + | 29. I prefer that the tutor models good discourse. | Sometimes | + | 30. I found that the tutor models good discourse. | Sometimes | + | 31. I prefer that the tutor models critical self-reflection. | Sometimes | + | 32. I found that the tutor models critical self-reflection. | Sometimes | + | 33. I prefer that other students encourage my participation. | Sometimes | + | 34. I found that other students encourage my participation. | Sometimes | + | 35. I prefer that other students praise my contribution. | Sometimes | + | 36. I found that other students praise my contribution. | Sometimes | + | 37. I prefer that other students value my contribution. | Sometimes | + | 38. I found that other students value my contribution. | Sometimes | + | 39. I prefer that other students empathise with my struggle to learn. | Sometimes | + | 40. I found that other students empathise with my struggle to learn. | Sometimes | + | 41. I prefer that I make good sense of other students' messages. | Sometimes | + | 42. I found that I make good sense of other students' messages. | Sometimes | + | 43. I prefer that other students make good sense of my messages. | Sometimes | + | 44. I found that other students make good sense of my messages. | Sometimes | + | 45. I prefer that I make good sense of the tutor's messages. | Sometimes | + | 46. I found that I make good sense of the tutor's messages. | Sometimes | + | 47. I prefer that the tutor makes good sense of my messages. | Sometimes | + | 48. I found that the tutor makes good sense of my messages. | Sometimes | + | 49. How long did this survey take you to complete? | 1-2 min | And I press "Submit" in the app And I press "OK" in the app Then I should see "You have completed this survey" diff --git a/src/testing/services/behat-dom.ts b/src/testing/services/behat-dom.ts index a19ce0b42..7e2334d78 100644 --- a/src/testing/services/behat-dom.ts +++ b/src/testing/services/behat-dom.ts @@ -512,22 +512,33 @@ export class TestsBehatDomUtils { * @param element HTML to set. * @param value Value to be set. */ - static async setElementValue(element: HTMLElement, value: string): Promise { + static async setElementValue(element: HTMLInputElement | HTMLElement, value: string): Promise { await NgZone.run(async () => { const blockKey = TestsBehatBlocking.block(); // Functions to get/set value depending on field type. - let setValue = (text: string) => { - element.innerHTML = text; - }; - let getValue = () => element.innerHTML; + const setValue = (text: string) => { + if (element.tagName === 'ION-SELECT' && 'value' in element) { + value = value.trim(); + const optionValue = Array.from(element.querySelectorAll('ion-select-option')) + .find((option) => option.innerHTML.trim() === value); - if (element instanceof HTMLInputElement || element instanceof HTMLTextAreaElement) { - setValue = (text: string) => { + if (optionValue) { + element.value = optionValue.value; + } + } else if ('value' in element) { element.value = text; - }; - getValue = () => element.value; - } + } else { + element.innerHTML = text; + } + }; + const getValue = () => { + if ('value' in element) { + return element.value; + } else { + return element.innerHTML; + } + }; // Pretend we have cut and pasted the new text. let event: InputEvent; diff --git a/src/testing/services/behat-runtime.ts b/src/testing/services/behat-runtime.ts index 5b93b2e5e..95b826c5c 100644 --- a/src/testing/services/behat-runtime.ts +++ b/src/testing/services/behat-runtime.ts @@ -400,8 +400,8 @@ export class TestsBehatRuntime { static setField(field: string, value: string): string { this.log('Action - Set field ' + field + ' to: ' + value); - const found: HTMLElement | HTMLInputElement | HTMLTextAreaElement = TestsBehatDomUtils.findElementBasedOnText( - { text: field, selector: 'input, textarea, [contenteditable="true"]' }, + const found: HTMLElement | HTMLInputElement = TestsBehatDomUtils.findElementBasedOnText( + { text: field, selector: 'input, textarea, [contenteditable="true"], ion-select' }, ); if (!found) {