ar_echo("\n\n-------------------------------------------------------------------------------------------------------------------\n"); ar_echo("rugrat->Find('children.id=1' ... ADODB_WORK_AR) [Worker Method]\n"); ar_echo("In rugrat's constructor it is specified that\nit must forget any existing relation\n"); ar_echo("-------------------------------------------------------------------------------------------------------------------\n"); $rugrat = new Rugrat('children'); $rugrats = $rugrat->Find('children.id=1', false, false, array('loading' => ADODB_WORK_AR)); ar_echo(ar_assert(found($rugrats, "'name_first' => 'Jill'")) ? "[OK] Found Jill\n" : "[!!] Find failed\n"); ar_echo(ar_assert(notfound($rugrats, "'favorite_color' => 'lavender'")) ? "[OK] No relation found\n" : "[!!] Found relation when I shouldn't\n"); ar_echo(ar_assert(notfound($rugrats, "'name_first' => 'Joan'")) ? "[OK] No Joan relation\n" : "[!!] Found relation when I shouldn't\n"); ar_echo(ar_assert(notfound($rugrats, "'name_first' => 'JAMIE'")) ? "[OK] No JAMIE relation\n" : "[!!] Found relation when I shouldn't\n"); ar_echo("\n\n-------------------------------------------------------------------------------------------------------------------\n"); ar_echo("kid->Find('children.id=1' ... ADODB_WORK_AR) [Worker Method]\n"); ar_echo("Note how only rugrat forgot its relations - kid is fine.\n"); ar_echo("-------------------------------------------------------------------------------------------------------------------\n"); $kid = new Kid('children'); $kids = $kid->Find('children.id=1', false, false, array('loading' => ADODB_WORK_AR)); ar_echo(ar_assert(found($kids, "'name_first' => 'Jill'")) ? "[OK] Found Jill\n" : "[!!] Find failed\n"); ar_echo(ar_assert(found($kids, "'favorite_color' => 'lavender'")) ? "[OK] I did not forget relation: person\n" : "[!!] I should not have forgotten relation: person\n"); ar_echo(ar_assert(notfound($kids, "'name_first' => 'Joan'")) ? "[OK] No Joan relation\n" : "[!!] Found relation when I shouldn't\n"); ar_echo(ar_assert(notfound($kids, "'name_first' => 'JAMIE'")) ? "[OK] No JAMIE relation\n" : "[!!] Found relation when I shouldn't\n"); ar_echo("\n\n-------------------------------------------------------------------------------------------------------------------\n"); ar_echo("rugrat->Find('children.id=1' ... ADODB_WORK_AR) [Worker Method]\n"); ar_echo("-------------------------------------------------------------------------------------------------------------------\n"); $rugrat = new Rugrat('children'); $rugrats = $rugrat->Find('children.id=1', false, false, array('loading' => ADODB_WORK_AR)); $arugrat = $rugrats[0]; ar_echo(ar_assert(found($arugrat, "'name_first' => 'Jill'")) ? "[OK] Found Jill\n" : "[!!] Find failed\n"); ar_echo(ar_assert(notfound($arugrat, "'favorite_color' => 'lavender'")) ? "[OK] No relation yet\n" : "[!!] Found relation when I shouldn't\n"); ar_echo("\n-- Loading relations:\n\n"); $arugrat->belongsTo('person'); $arugrat->LoadRelations('person', 'order by id', 0, 2);