getting AI to look Left, then Right, then resume path

Ok. So this is my second problem today… You all were great help earlier so here goes. I have AI pathfinding, and I want the AI to stop when the reach a waypoint, look left and right, then resume their pathfinding. Of course I want this to be a smooth interpolation left and then right and then back to forward. I’ve been looking at all sorts of documentation and other questions about turning but none seem to quite work with my problem, but maybe I’m just missing something.
So here is my completely broken code, just to see where I’m coming from…

//look left

newRotation = Quaternion.LookRotation(targetLeft - transform.position);

	while(transform.rotation != newRotation)
		{
	    transform.rotation = Quaternion.Lerp(transform.rotation, newRotation,Time.deltaTime);

		Debug.Log("Looking Left");
		yield return null;
		}
//look right
	newRotation = Quaternion.LookRotation(targetRight - transform.position);
	while(transform.rotation != newRotation)
		{
			transform.rotation = Quaternion.Lerp(transform.rotation, newRotation, Time.deltaTime);
			Debug.Log("Looking Right");
			yield return null;
		}

If it is in C# try something a little like this:

void Start(){
		StartCoroutine (LookSequence); //Move this to a point in your code when the event needs to be triggered
	}

	public IEnumerator LookSequence(){
		//Stop the Ai from moving
		yield return new WaitForSeconds (1); //This code makes the script stop for 1 second. You can use float values here (for example 0.5F)
		LookLeft ();
		yield return new WaitForSeconds (3); //Change this to however long you want the AI to be looking left for
		LookRight ();
		yield return new WaitForSeconds (3); //Change this to however long you want the AI to be looking right for
		//Return the AI's head rotation to default and start moving again
	}

	public void LookLeft(){
		while (transform.rotation != newRotation) {
						newRotation = Quaternion.LookRotation (targetLeft - transform.position);
						transform.rotation = Quaternion.Lerp (transform.rotation, newRotation, Time.deltaTime);
						Debug.Log ("Looking Left");
				}
	}

	public void LookRight(){
		newRotation = Quaternion.LookRotation(targetRight - transform.position);
		while(transform.rotation != newRotation)
		{
			transform.rotation = Quaternion.Lerp(transform.rotation, newRotation, Time.deltaTime);
			Debug.Log("Looking Right");
		}
	}