function testRepeatedValidateClearsPreviousCleanValue() { $input = new T_Form_Upload('myalias', 'mylabel'); $files = array($input->getFieldname() => new T_File_Uploaded('first/path', 150, 'first.txt')); $src = new T_Test_Cage_PostStub(array(), $files); $input->validate($src); $files = array($input->getFieldname() => new T_File_Uploaded('some/path', 100, 'upload.txt')); $src = new T_Test_Cage_PostStub(array(), $files); $input->validate($src); $this->assertSame($input->isValid(), true); $this->assertSame($input->isPresent(), true); $this->assertSame($input->getError(), false); $this->assertSame($input->getValue(), $src->asFile('myalias')); $this->assertSame($input->getDefault(), null); }