/** * @dataProvider user_agents_providers */ public function test_useragent_edge($useragent, $tests) { // Setup the core_useragent instance. core_useragent::instance(true, $useragent); // Edge Tests. if (isset($tests['is_edge']) && $tests['is_edge']) { $this->assertTrue(core_useragent::is_edge()); } else { $this->assertFalse(core_useragent::is_edge()); } $versions = array('12' => false); if (isset($tests['check_edge_version'])) { // The test provider has overwritten some of the above checks. // Must use the '+' operator, because array_merge will incorrectly rewrite the array keys for integer-based indexes. $versions = $tests['check_edge_version'] + $versions; } foreach ($versions as $version => $result) { $this->assertEquals($result, core_useragent::check_edge_version($version), "Version incorrectly determined for Edge version '{$version}'"); } }