Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
66.67% |
2 / 3 |
CRAP | |
83.87% |
26 / 31 |
DigitalV2Provider | |
0.00% |
0 / 1 |
|
66.67% |
2 / 3 |
4.07 | |
83.87% |
26 / 31 |
fake | |
100.00% |
1 / 1 |
2 | |
100.00% |
5 / 5 |
|||
call | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 5 |
|||
fakeOne | |
100.00% |
1 / 1 |
1 | |
100.00% |
21 / 21 |
1 | <?php |
2 | |
3 | namespace Qmp\Laravel\SiteGeneratorOffers\Retriever; |
4 | |
5 | use Faker\Generator as Faker; |
6 | use GuzzleHttp\Client; |
7 | use Illuminate\Support\Collection; |
8 | |
9 | class DigitalV2Provider extends AbstractProvider |
10 | { |
11 | protected function fake(): Collection |
12 | { |
13 | $random = random_int(5, 15); |
14 | $result = collect(); |
15 | |
16 | for ($i = 0; $i < $random; $i++) { |
17 | $result->push($this->fakeOne()); |
18 | } |
19 | |
20 | return $result; |
21 | } |
22 | |
23 | protected function call(): Collection |
24 | { |
25 | $client = new Client(); |
26 | $request = $client->get(config('site-generator.digitalv2_url') . '/site-generator/offer?token=' . config('site-generator.digitalv2_token')); |
27 | $response = $request->getBody(); |
28 | |
29 | $offers = json_decode($response, true); |
30 | |
31 | return collect($offers); |
32 | } |
33 | |
34 | protected function fakeOne() |
35 | { |
36 | $faker = resolve(Faker::class); |
37 | |
38 | $campaign = $faker->company; |
39 | $offer = 'Banniere ' . $campaign . ' 300x250 2001'; |
40 | $offer_id = $faker->unique()->numberBetween(5000, 5015); |
41 | |
42 | return [ |
43 | 'id' => $offer_id, |
44 | 'text' => $offer, |
45 | 'status' => 1, // $faker->randomElement([0, 1]), |
46 | 'e_cpm' => $faker->randomFloat(2, 1, 20), |
47 | 'description' => $faker->text(150), |
48 | 'textBtn' => $faker->words(4, true), |
49 | 'title' => $faker->words(5, true), |
50 | 'action' => $faker->randomElement(["iframe", "new_window", "clic_transmission", "submit_transmission", "redirection"]), |
51 | 'digitalv2' => [ |
52 | 'id' => $offer_id, |
53 | 'name' => $offer, |
54 | 'state' => $faker->randomElement([0, 1]), |
55 | 'date_create' => $faker->date() . ' ' . $faker->time(), |
56 | 'offer_id' => $faker->numberBetween(3000, 3015), |
57 | 'offer_name' => $campaign . ' display 2001', |
58 | 'offer_state' => $faker->randomElement([1, 2]), |
59 | 'ca' => 0, |
60 | 'total' => 0 |
61 | ] |
62 | ]; |
63 | } |
64 | } |