reverse order of expects and pub to make it clear next() has a side effect