function testAllReturnsCollectionOfProjects() { $http_response = dummyObject(['status' => '200', 'body' => '{"data":[{"id":2,"account_id":1,"active":true,"name":"Project","overdue":false,"text_direction":"ltr"}]}']); $request = $this->getMockBuilder('\\Test\\Request')->getMock(); $request->method('get')->with($this->equalTo('projects'), $this->equalTo(['account_id' => 1]))->willReturn(new \GatherContent\Response($http_response)); $subject = new ProjectCollection($request); $projects = $subject->forAccountId(1); $this->assertCount(1, $projects); $project = $projects[0]; $this->assertInstanceOf('\\GatherContent\\Model\\Project', $project); $this->assertSame(2, $project->id); $this->assertSame(1, $project->account_id); $this->assertEquals('Project', $project->name); $this->assertEquals('ltr', $project->text_direction); $this->assertTrue($project->active); $this->assertFalse($project->overdue); }