object = $this->getMockBuilder(FraudData::class)->getMockForAbstractClass(); $this->assertTrue(class_exists(FraudData::class)); $this->assertInstanceOf(FraudData::class, $this->object); } /** * Test property "topped_up_phone" * @dataProvider validToppedUpPhoneDataProvider * @param mixed $value * * @return void * @throws Exception */ public function testToppedUpPhone(mixed $value): void { $instance = $this->getTestInstance(); self::assertEmpty($instance->getToppedUpPhone()); self::assertEmpty($instance->topped_up_phone); $instance->setToppedUpPhone($value); self::assertEquals($value, is_array($value) ? $instance->getToppedUpPhone()->toArray() : $instance->getToppedUpPhone()); self::assertEquals($value, is_array($value) ? $instance->topped_up_phone->toArray() : $instance->topped_up_phone); if (!empty($value)) { self::assertNotNull($instance->getToppedUpPhone()); self::assertNotNull($instance->topped_up_phone); self::assertMatchesRegularExpression("/[0-9]{4,15}/", $instance->getToppedUpPhone()); self::assertMatchesRegularExpression("/[0-9]{4,15}/", $instance->topped_up_phone); } } /** * Test invalid property "topped_up_phone" * @dataProvider invalidToppedUpPhoneDataProvider * @param mixed $value * @param string $exceptionClass * * @return void */ public function testInvalidToppedUpPhone(mixed $value, string $exceptionClass): void { $instance = $this->getTestInstance(); $this->expectException($exceptionClass); $instance->setToppedUpPhone($value); } /** * @return array[] * @throws Exception */ public function validToppedUpPhoneDataProvider(): array { $instance = $this->getTestInstance(); return $this->getValidDataProviderByType($instance->getValidator()->getRulesByPropName('_topped_up_phone')); } /** * @return array[] * @throws Exception */ public function invalidToppedUpPhoneDataProvider(): array { $instance = $this->getTestInstance(); return $this->getInvalidDataProviderByType($instance->getValidator()->getRulesByPropName('_topped_up_phone')); } /** * Test property "merchant_customer_bank_account" * @dataProvider validMerchantCustomerBankAccountDataProvider * @param mixed $value * * @return void * @throws Exception */ public function testMerchantCustomerBankAccount(mixed $value): void { $instance = $this->getTestInstance(); self::assertEmpty($instance->getMerchantCustomerBankAccount()); self::assertEmpty($instance->merchant_customer_bank_account); $instance->setMerchantCustomerBankAccount($value); self::assertEquals($value, is_array($value) ? $instance->getMerchantCustomerBankAccount()->toArray() : $instance->getMerchantCustomerBankAccount()); self::assertEquals($value, is_array($value) ? $instance->merchant_customer_bank_account->toArray() : $instance->merchant_customer_bank_account); if (!empty($value)) { self::assertNotNull($instance->getMerchantCustomerBankAccount()); self::assertNotNull($instance->merchant_customer_bank_account); } } /** * Test invalid property "merchant_customer_bank_account" * @dataProvider invalidMerchantCustomerBankAccountDataProvider * @param mixed $value * @param string $exceptionClass * * @return void */ public function testInvalidMerchantCustomerBankAccount(mixed $value, string $exceptionClass): void { $instance = $this->getTestInstance(); $this->expectException($exceptionClass); $instance->setMerchantCustomerBankAccount($value); } /** * @return array[] * @throws Exception */ public function validMerchantCustomerBankAccountDataProvider(): array { $instance = $this->getTestInstance(); return $this->getValidDataProviderByType($instance->getValidator()->getRulesByPropName('_merchant_customer_bank_account')); } /** * @return array[] * @throws Exception */ public function invalidMerchantCustomerBankAccountDataProvider(): array { $instance = $this->getTestInstance(); return $this->getInvalidDataProviderByType($instance->getValidator()->getRulesByPropName('_merchant_customer_bank_account')); } }