public function testAddCollection()
 {
     $converters1 = new TypeConverterCollection();
     $converters2 = new TypeConverterCollection();
     $dateTimeTypeConverter = new DateTimeTypeConverter();
     $converters2->add($dateTimeTypeConverter);
     $converters1->addCollection($converters2);
     $this->assertSame(array($dateTimeTypeConverter), $converters1->all());
     $this->setExpectedException('InvalidArgumentException');
     $converters1->addCollection($converters2);
 }
 public function testWithTypeConverters()
 {
     $builder = $this->getSoapBuilder();
     $builder->withTypeConverter(new DateTypeConverter());
     $options = $builder->getSoapOptions();
     $this->assertEquals(1, count($options['typemap']));
     $converters = new TypeConverterCollection();
     $converters->add(new DateTimeTypeConverter());
     $builder->withTypeConverters($converters);
     $options = $builder->getSoapOptions();
     $this->assertEquals(2, count($options['typemap']));
     $builder->withTypeConverters($converters, false);
     $options = $builder->getSoapOptions();
     $this->assertEquals(1, count($options['typemap']));
 }