assertObjectHasProperty($propertyName, $customer); } public static function dataMethods(): array { return [ ['rut'] ]; } #[DataProvider('dataMethods')] public function testMethods(string $methodName): void { $customer = new Customer(); $this->assertObjectHasMethod($methodName, $customer); } public function testJson(): void { $faker = Faker\Factory::create(); $persona = $this->getMockBuilder(Persona::class)->disableOriginalConstructor()->getMock(); $persona->rut = $faker->randomNumber(8); $persona->digito = 'k'; $toku_id = $faker->ean13(); $id = $faker->randomNumber(4); $customer = new Customer(); $customer->id = $id; $customer->persona = $persona; $customer->toku_id = $toku_id; $expected = json_encode([ 'id' => $id, 'rut' => implode('', [$persona->rut, strtoupper($persona->digito)]), 'toku_id' => $toku_id ]); $this->assertJsonStringEqualsJsonString($expected, json_encode($customer)); } }