View | Details | Raw Unified | Return to bug 40121
Collapse All | Expand All

(-)a/t/cypress/integration/KohaTable/PatronSearch_spec.ts (-1 / +69 lines)
Lines 114-116 describe("ExtendedPatronAttributes", () => { Link Here
114
        });
114
        });
115
    });
115
    });
116
});
116
});
117
- 
117
118
describe("Filters", () => {
119
    const table_id = "memberresultst";
120
121
    beforeEach(() => {
122
        cleanup();
123
        cy.login();
124
        cy.title().should("eq", "Koha staff interface");
125
        cy.window().then(win => {
126
            win.localStorage.clear();
127
        });
128
    });
129
130
    it.only("Keep filters in the column filters", () => {
131
        cy.task("buildSampleObjects", {
132
            object: "patron",
133
            count: RESTdefaultPageSize,
134
            values: {},
135
        }).then(patrons => {
136
            // Needs more properties to not explode
137
            // account_balace: balance_str.escapeHtml(...).format_price is not a function
138
            patrons = patrons.map(p => ({ ...p, account_balance: 0 }));
139
140
            cy.intercept("GET", "/api/v1/patrons*", {
141
                statusCode: 200,
142
                body: patrons,
143
                headers: {
144
                    "X-Base-Total-Count": baseTotalCount,
145
                    "X-Total-Count": baseTotalCount,
146
                },
147
            });
148
149
            cy.visit("/cgi-bin/koha/members/members-home.pl");
150
151
            cy.window().then(win => {
152
                win.categories_map = patrons.reduce((map, p) => {
153
                    map[p.category_id] = p.category_id;
154
                    return map;
155
                }, {});
156
            });
157
            cy.get("form.patron_search_form .branchcode_filter").select("CPL");
158
            cy.get("form.patron_search_form .categorycode_filter").select("S");
159
            cy.get("form.patron_search_form input[type='submit']").click();
160
161
            cy.get(`#${table_id}_wrapper .dt-info`).contains(
162
                `Showing 1 to ${RESTdefaultPageSize} of ${baseTotalCount} entries`
163
            );
164
165
            cy.get(`#${table_id} thead tr`).should("have.length", 2);
166
167
            cy.get(
168
                `#${table_id} thead tr th[data-filter='libraries'] select`
169
            ).should("have.value", "^CPL$");
170
            // Lowercase see bug 32517 and related code in datatables.js
171
            cy.get(
172
                `#${table_id} thead tr th[data-filter='categories'] select`
173
            ).should("have.value", "^s$");
174
175
            cy.get(`#${table_id}_wrapper .dt_button_clear_filter`).click();
176
            cy.get(
177
                `#${table_id} thead tr th[data-filter='libraries'] select`
178
            ).should("have.value", "");
179
            // Lowercase see bug 32517 and related code in datatables.js
180
            cy.get(
181
                `#${table_id} thead tr th[data-filter='categories'] select`
182
            ).should("have.value", "");
183
        });
184
    });
185
});

Return to bug 40121