File tree Expand file tree Collapse file tree 3 files changed +11
-11
lines changed
sap/ui/webcomponents/main/pages Expand file tree Collapse file tree 3 files changed +11
-11
lines changed Original file line number Diff line number Diff line change @@ -154,12 +154,10 @@ class RadioButtonGroup {
154
154
static enforceSingleSelection ( radioBtn , groupName ) {
155
155
const selectedRadio = this . getSelectedRadioFromGroup ( groupName ) ;
156
156
157
- if ( ! selectedRadio ) {
158
- return ;
159
- }
160
-
161
157
if ( radioBtn . selected ) {
162
- if ( radioBtn !== selectedRadio ) {
158
+ if ( ! selectedRadio ) {
159
+ this . selectedRadios . set ( groupName , radioBtn ) ;
160
+ } else if ( radioBtn !== selectedRadio ) {
163
161
this . _deselectRadio ( selectedRadio ) ;
164
162
this . selectedRadios . set ( groupName , radioBtn ) ;
165
163
}
Original file line number Diff line number Diff line change @@ -50,9 +50,9 @@ <h1>ui5-radiobutton</h1>
50
50
< ui5-title > Group of states</ ui5-title >
51
51
< ui5-label id ="lblRadioGroup "> </ ui5-label >
52
52
< ui5-label id ="lblEventCounter "> </ ui5-label >
53
- < ui5-radiobutton id ="groupRb7 " text ="None selected " value-state ="None " selected name ="GroupB "> </ ui5-radiobutton >
54
- < ui5-radiobutton id ="groupRb8 " text ="Warning " value-state ="Warning " name ="GroupB "> </ ui5-radiobutton >
55
- < ui5-radiobutton id ="groupRb9 "text ="Error " value-state ="Error " name ="GroupB "> </ ui5-radiobutton >
53
+ < ui5-radiobutton id ="groupRb7 " text ="None selected " value-state ="None " name ="GroupB "> </ ui5-radiobutton >
54
+ < ui5-radiobutton id ="groupRb8 " text ="Warning " value-state ="Warning " selected name ="GroupB "> </ ui5-radiobutton >
55
+ < ui5-radiobutton id ="groupRb9 "text ="Error " value-state ="Error " selected name ="GroupB "> </ ui5-radiobutton >
56
56
< ui5-radiobutton id ="groupRb10 " text ="Default selected " value-state ="None " selected name ="GroupB "> </ ui5-radiobutton >
57
57
< ui5-radiobutton id ="groupRb11 " text ="Other group selected " value-state ="None " selected name ="GroupBB "> </ ui5-radiobutton >
58
58
</ div >
Original file line number Diff line number Diff line change @@ -92,13 +92,15 @@ describe("RadioButton general interaction", () => {
92
92
} ) ;
93
93
94
94
it ( "tests single selection within group, even if multiple radios are set as selected" , ( ) => {
95
- // radio with property selected=true, but not selected
96
- const radioButtonNotSelected = browser . findElementDeep ( "#groupRb7 >>> .sapMRb" ) ;
95
+ // radios with property selected=true, but not selected
96
+ const radioButtonNotSelected1 = browser . findElementDeep ( "#groupRb8 >>> .sapMRb" ) ;
97
+ const radioButtonNotSelected2 = browser . findElementDeep ( "#groupRb9 >>> .sapMRb" ) ;
97
98
98
99
// radio with property selected=true and actually selected as subsequent
99
100
const radioButtonActuallySelected = browser . findElementDeep ( "#groupRb10 >>> .sapMRb" ) ;
100
101
101
- assert . ok ( ! radioButtonNotSelected . hasClass ( "sapMRbSel" ) , "The radio is not selected as following one selected" ) ;
102
+ assert . ok ( ! radioButtonNotSelected1 . hasClass ( "sapMRbSel" ) , "The radio is not selected as the last one is selected" ) ;
103
+ assert . ok ( ! radioButtonNotSelected2 . hasClass ( "sapMRbSel" ) , "The radio is not selected as the last one is selected" ) ;
102
104
assert . ok ( radioButtonActuallySelected . hasClass ( "sapMRbSel" ) , 'The correct radio is selected' ) ;
103
105
} ) ;
104
106
You can’t perform that action at this time.
0 commit comments