so = System::firstOrCreate(['name'=>'test','sysop'=>'sysop','location'=>'location','active'=>TRUE]); $this->do = Domain::firstOrCreate(['name'=>'packets','active'=>TRUE]); } public function test_nomsgid_origin() { $this->init(); Zone::unguard(); Address::unguard(); $zo = Zone::firstOrCreate(['zone_id'=>21,'default'=>TRUE,'active'=>TRUE,'domain_id'=>$this->do->id,'system_id'=>$this->so->id]); $src = Address::firstOrCreate(['zone_id'=>$zo->id,'region_id'=>0,'host_id'=>3,'node_id'=>151,'point_id'=>0,'active'=>TRUE,'system_id'=>$this->so->id]); $hub = Address::firstOrCreate(['zone_id'=>$zo->id,'region_id'=>0,'host_id'=>1,'node_id'=>1,'point_id'=>0,'active'=>TRUE,'system_id'=>$this->so->id]); $ao = Address::firstOrCreate(['zone_id'=>$zo->id,'region_id'=>0,'host_id'=>1,'node_id'=>4,'point_id'=>0,'active'=>TRUE,'system_id'=>$this->so->id]); // This packet has an incorrect zone in the Origin $f = new File(__DIR__.'/data/test_nomsgid_origin.pkt'); $pkt = Packet::open($f,NULL,FALSE); $this->assertEquals(1,$pkt->count()); $messages = FALSE; foreach ($pkt as $msg) { $messages = TRUE; $this->assertNotTrue($msg->isNetmail()); $this->assertNotFalse($msg->pathaddress->search($hub->id)); $this->assertCount(1,$msg->rogue_path); $this->assertNotFalse($msg->rogue_path->search('21:999/1')); $this->assertCount(3,$msg->rogue_seen); $this->assertNotFalse($msg->rogue_seen->search('21:999/1')); $this->assertNotFalse($msg->rogue_seen->search('21:999/999')); } $this->assertTrue($messages); } public function test_nomsgid_noorigin() { $this->init(); Zone::unguard(); Address::unguard(); $zo = Zone::firstOrCreate(['zone_id'=>10,'default'=>TRUE,'active'=>TRUE,'domain_id'=>$this->do->id,'system_id'=>$this->so->id]); $src = Address::firstOrCreate(['zone_id'=>$zo->id,'region_id'=>0,'host_id'=>999,'node_id'=>1,'point_id'=>0,'active'=>TRUE,'system_id'=>$this->so->id]); // This packet has an incorrect zone in the Origin $f = new File(__DIR__.'/data/test_nomsgid_noorigin.pkt'); $pkt = Packet::open($f,$zo,FALSE); $this->assertEquals(1,$pkt->count()); $messages = FALSE; foreach ($pkt as $msg) { $messages = TRUE; $this->assertNotTrue($msg->isNetmail()); $this->assertCount(1,$msg->rogue_path); $this->assertNotFalse($msg->rogue_path->search('10:1/1')); $this->assertCount(0,$msg->rogue_seen); } $this->assertTrue($messages); } public function test_msgid_origin() { $this->init(); Zone::unguard(); Address::unguard(); $zo = Zone::firstOrCreate(['zone_id'=>10,'default'=>TRUE,'active'=>TRUE,'domain_id'=>$this->do->id,'system_id'=>$this->so->id]); $src = Address::firstOrCreate(['zone_id'=>$zo->id,'region_id'=>0,'host_id'=>999,'node_id'=>1,'point_id'=>0,'active'=>TRUE,'system_id'=>$this->so->id]); // This packet has an incorrect zone in the Origin $f = new File(__DIR__.'/data/test_msgid_origin.pkt'); $pkt = Packet::open($f,$zo,FALSE); $this->assertEquals(1,$pkt->count()); $messages = FALSE; foreach ($pkt as $msg) { $messages = TRUE; $this->assertNotTrue($msg->isNetmail()); $this->assertCount(0,$msg->rogue_path); $this->assertCount(2,$msg->rogue_seen); $this->assertNotFalse($msg->rogue_seen->search('10:1/1')); $this->assertNotFalse($msg->rogue_seen->search('10:999/999')); $this->assertNotFalse($msg->seenaddress->search($src->id)); } $this->assertTrue($messages); } }