Merge "Fix network selector filter at LB creation"

This commit is contained in:
Zuul 2022-08-16 20:05:28 +00:00 committed by Gerrit Code Review
commit a10e65ce42
2 changed files with 18 additions and 1 deletions

View File

@ -134,6 +134,8 @@
ctrl.isOpen = false; ctrl.isOpen = false;
// Arrays of text to be displayed // Arrays of text to be displayed
ctrl.rows = []; ctrl.rows = [];
// Array of non-rendered options after filter apply
ctrl.filtered_options = [];
// Lifecycle methods // Lifecycle methods
ctrl.$onInit = function() { ctrl.$onInit = function() {
@ -184,7 +186,7 @@
}; };
ctrl.selectOption = function(index) { ctrl.selectOption = function(index) {
var option = ctrl.options[index]; var option = ctrl.filtered_options[index];
ctrl.onSelect({ ctrl.onSelect({
option: option option: option
}); });
@ -218,11 +220,13 @@
}; };
ctrl._buildRows = function() { ctrl._buildRows = function() {
ctrl.filtered_options.length = 0;
ctrl.rows.length = 0; ctrl.rows.length = 0;
angular.forEach(ctrl.options, function(option) { angular.forEach(ctrl.options, function(option) {
var row = ctrl._buildRow(option); var row = ctrl._buildRow(option);
if (row) { if (row) {
ctrl.rows.push(row); ctrl.rows.push(row);
ctrl.filtered_options.push(option);
} }
}); });
}; };

View File

@ -188,6 +188,19 @@
}); });
expect(ctrl.isOpen).toBe(false); expect(ctrl.isOpen).toBe(false);
}); });
it('should select correct option after filter input', function() {
var mockInput = '2';
ctrl.text = mockInput;
ctrl.onTextChange();
ctrl.selectOption(0);
expect(ctrl.onSelect).toHaveBeenCalledWith({
option: mockOptions[1]
});
expect(ctrl.filtered_options.length).toBe(1);
expect(ctrl.filtered_options[0].text).toContain(mockInput);
expect(ctrl.isOpen).toBe(false);
});
}); });
describe('controller', function() { describe('controller', function() {