PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Tuesday, March 8, 2022

[FIXED] Laravel Dusk - Call to a member function click() on array

 March 08, 2022     jquery-select2, laravel, laravel-dusk, php, testing     No comments   

Issue

I have a problem. When I try to run my dusk test it outputs this error:

1) Tests\Browser\NewPostTest::test_new_post
Error: Call to a member function click() on array

D:\xampp\htdocs\laravel_blog\tests\Browser\NewPostTest.php:32
D:\xampp\htdocs\laravel_blog\vendor\laravel\dusk\src\Concerns\ProvidesBrowser.php:67
D:\xampp\htdocs\laravel_blog\tests\Browser\NewPostTest.php:34

My testing method looks like this:

public function test_new_post()
    {
        $this->browse(function (Browser $browser) {
          $faker = Faker::create();
          $title = $faker->sentence();
          $slug = str_replace(' ', '-', $title);
          $browser->loginAs(User::find(2))
                  ->visit('/posts/create')
                  ->assertSee('Create New Post')
                  ->type('title', $title)
                  ->type('slug', $slug)
                  ->type('body', $faker->paragraphs(5, true))
                  ->select('category_id')
                  ->script('jQuery(".select2").val(["1","2"]).trigger("change");')
                  ->click('input[type=submit]#submit')
                  ->assertPathIs('/posts');
        });
    }

As you see I'm using select2 for my tags . Can anyone please tell me what I'm doing wrong?


Solution

You can't use chaining after script() because it returns an array instead of $this:

$browser->[...]
    ->script('jQuery(".select2").val(["1","2"]).trigger("change");')
$browser->click('input[type=submit]#submit')
    ->assertPathIs('/posts');


Answered By - Jonas Staudenmeir
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing