Overview

Namespaces

  • GeoIp2
    • Compat
    • Database
    • Exception
    • Model
    • Record
    • Test
      • Database
      • Model
      • WebService
    • WebService
  • MaxMind
    • MinFraud
      • Model

Classes

  • GeoIp2\Compat\JsonSerializable
  • GeoIp2\Database\Reader
  • GeoIp2\Model\AnonymousIp
  • GeoIp2\Model\City
  • GeoIp2\Model\ConnectionType
  • GeoIp2\Model\Country
  • GeoIp2\Model\Domain
  • GeoIp2\Model\Enterprise
  • GeoIp2\Model\Insights
  • GeoIp2\Model\Isp
  • GeoIp2\Record\AbstractPlaceRecord
  • GeoIp2\Record\AbstractRecord
  • GeoIp2\Record\City
  • GeoIp2\Record\Continent
  • GeoIp2\Record\Country
  • GeoIp2\Record\Location
  • GeoIp2\Record\MaxMind
  • GeoIp2\Record\Postal
  • GeoIp2\Record\RepresentedCountry
  • GeoIp2\Record\Subdivision
  • GeoIp2\Record\Traits
  • GeoIp2\Test\Database\ReaderTest
  • GeoIp2\Test\Model\CountryTest
  • GeoIp2\Test\Model\InsightsTest
  • GeoIp2\Test\Model\NameTest
  • GeoIp2\Test\WebService\ClientTest
  • GeoIp2\WebService\Client
  • MaxMind\MinFraud
  • MaxMind\MinFraud\Model\Address
  • MaxMind\MinFraud\Model\BillingAddress
  • MaxMind\MinFraud\Model\CreditCard
  • MaxMind\MinFraud\Model\Device
  • MaxMind\MinFraud\Model\Email
  • MaxMind\MinFraud\Model\Factors
  • MaxMind\MinFraud\Model\GeoIp2Country
  • MaxMind\MinFraud\Model\GeoIp2Location
  • MaxMind\MinFraud\Model\Insights
  • MaxMind\MinFraud\Model\IpAddress
  • MaxMind\MinFraud\Model\Issuer
  • MaxMind\MinFraud\Model\Score
  • MaxMind\MinFraud\Model\ScoreIpAddress
  • MaxMind\MinFraud\Model\ShippingAddress
  • MaxMind\MinFraud\Model\Subscores
  • MaxMind\MinFraud\Model\Warning

Interfaces

  • GeoIp2\ProviderInterface

Exceptions

  • GeoIp2\Exception\AddressNotFoundException
  • GeoIp2\Exception\AuthenticationException
  • GeoIp2\Exception\GeoIp2Exception
  • GeoIp2\Exception\HttpException
  • GeoIp2\Exception\InvalidRequestException
  • GeoIp2\Exception\OutOfQueriesException
  • Overview
  • Namespace
  • Class
 1:  2:  3:  4:  5:  6:  7:  8:  9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 
<?php

namespace GeoIp2\Test\Model;

use GeoIp2\Model\Country;

class NameTest extends \PHPUnit_Framework_TestCase
{
    public $raw = array(
        'continent' => array(
            'code' => 'NA',
            'geoname_id' => 42,
            'names' => array(
                'en' => 'North America',
                'zh-CN' => '北美洲',
            ),
        ),
        'country' => array(
            'geoname_id' => 1,
            'iso_code' => 'US',
            'names' => array(
                'en' => 'United States of America',
                'ru' => 'объединяет государства',
                'zh-CN' => '美国',
            ),
        ),
        'traits' => array(
            'ip_address' => '1.2.3.4',
        ),
    );

    public function testFallback()
    {
        $model = new Country($this->raw, array('ru', 'zh-CN', 'en'));

        $this->assertSame(
            '北美洲',
            $model->continent->name,
            'continent name is in Chinese (no Russian available)'
        );

        $this->assertSame(
            'объединяет государства',
            $model->country->name,
            'country name is in Russian'
        );
    }

    public function testTwoFallbacks()
    {
        $model = new Country($this->raw, array('ru', 'ja'));

        $this->assertSame(
            null,
            $model->continent->name,
            'continent name is undef (no Russian or Japanese available)'
        );

        $this->assertSame(
            'объединяет государства',
            $model->country->name,
            'country name is in Russian'
        );
    }

    public function testNoFallbacks()
    {
        $model = new Country($this->raw, array('ja'));

        $this->assertSame(
            null,
            $model->continent->name,
            'continent name is undef (no Japanese available) '
        );

        $this->assertSame(
            null,
            $model->country->name,
            'country name is undef (no Japanese available) '
        );
    }
}
minFraud Score and Insights PHP API v0.5.0 API documentation generated by ApiGen