/** * Register a conversion for a destination test * * @since 1.1.0 * * @param int $group_id */ public static function conversion($group_id) { $variant_id = cookie::get_cookie($group_id); if (is_numeric($variant_id)) { ingot_register_conversion($variant_id); } }
/** * Clear out invalid destination cookies * * @since 1.1.0 * * @param $groups */ public static function clear_invalid(array $groups) { $cookies = cookie::get_all_cookies(); $clear = []; if (empty($groups)) { $clear = $groups; } elseif (!empty($cookies) && !empty($groups)) { foreach ($cookies as $group_id) { if (!in_array($group_id, $groups) || !group::exists($group_id)) { cookie::clear_cookie($group_id); } } } if (!empty($clear)) { foreach ($clear as $group_id) { cookie::clear_cookie($group_id); } } }
/** * Test getting group IDs for destination cookies * @since 1.1.0 * * @group destination * @group cookie * @group destination_cookie * @group array_filter * * @covers \ingot\testing\utility\array_filters::filter_results() * @covers \ingot\testing\utility\array_filters::match() * @covers \ingot\testing\utility\array_filters::prepare() */ public function testGetCookies() { $_COOKIE = ['ingot_destination_9' => 12, 'ingot_destination_42' => 7, 'hi chris', 'ingot_97' => 94, 'ingot_destination' => 88, 'hats_8765' => ['batman', 'robin']]; $results = \ingot\testing\tests\click\destination\cookie::get_all_cookies(); $this->assertEquals(['9', '42'], $results); }