mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-04 05:53:43 +00:00 
			
		
		
		
	alert_words_ui test: Avoid bizarre idioms.
We now just do the following in the mocking:
    - capture which items are passed into the list
      widget
    - simulate the call to modifier_html to exercise
      the template rendering
			
			
This commit is contained in:
		@@ -19,26 +19,29 @@ alert_words.initialize({
 | 
			
		||||
run_test("rerender_alert_words_ui", ({mock_template}) => {
 | 
			
		||||
    let list_widget_create_called = false;
 | 
			
		||||
    alert_words_ui.reset();
 | 
			
		||||
    const ListWidget = mock_esm("../src/list_widget", {
 | 
			
		||||
        modifier_html: noop,
 | 
			
		||||
 | 
			
		||||
    mock_esm("../src/list_widget", {
 | 
			
		||||
        create(_container, words, opts) {
 | 
			
		||||
            const alert_words = [];
 | 
			
		||||
            ListWidget.modifier_html = opts.modifier_html;
 | 
			
		||||
            assert.deepEqual(words, [{word: "foo"}, {word: "bar"}]);
 | 
			
		||||
            for (const word of words) {
 | 
			
		||||
                alert_words.push(opts.modifier_html(word));
 | 
			
		||||
                opts.modifier_html(word);
 | 
			
		||||
            }
 | 
			
		||||
            list_widget_create_called = true;
 | 
			
		||||
            return alert_words;
 | 
			
		||||
        },
 | 
			
		||||
        generic_sort_functions: noop,
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    mock_template("settings/alert_word_settings_item.hbs", false, (args) => {
 | 
			
		||||
        assert.ok(["foo", "bar"].includes(args.alert_word.word));
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    assert.equal(alert_words_ui.loaded, false);
 | 
			
		||||
    alert_words_ui.rerender_alert_words_ui();
 | 
			
		||||
    assert.equal(list_widget_create_called, false);
 | 
			
		||||
 | 
			
		||||
    // Invoke list_widget.create indirectly via these calls.
 | 
			
		||||
    alert_words_ui.rerender_alert_words_ui();
 | 
			
		||||
    alert_words_ui.set_up_alert_words();
 | 
			
		||||
 | 
			
		||||
    assert.equal(alert_words_ui.loaded, true);
 | 
			
		||||
    assert.equal(list_widget_create_called, true);
 | 
			
		||||
});
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user