コルーチンの停止について質問させてください。
以下のコードのようにクリックしたらtestCoroutineを止めるというのをやりたいのですが、
testCoroutineだけでなくStart()の中のコルーチンもなぜか止まってしまいます。
(実際にコンソールに"startCoroutine"が表示されない)
testCoroutineのみを止めるにはどうすればよいでしょうか?

public class CoroutineTest : MonoBehaviour {
IEnumerator testCoroutine;
IEnumerator Start() {
while (true){
testCoroutine = TestCoroutine();
yield return StartCoroutine(testCoroutine);
Debug.Log("startCoroutine");
yield return null;
}
}

void Update () {if(クリックしたら) StopCoroutine(testCoroutine);}

IEnumerator TestCoroutine(){
while (true){
Debug.Log("testCoroutine");
yield return null;
}
}
}