Add onGenerationEvaluated stream, fix assumptions in unittest