Skip to content

Commit cc5f95d

Browse files
committed
Support passing posts to the component
1 parent 6cbefcf commit cc5f95d

File tree

2 files changed

+24
-1
lines changed

2 files changed

+24
-1
lines changed

packages/framework/resources/views/components/blog-post-feed.blade.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<ol itemscope itemtype="https://schema.org/ItemList">
2-
@foreach(MarkdownPost::getLatestPosts() as $post)
2+
@foreach($posts ?? MarkdownPost::getLatestPosts() as $post)
33
<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" class="mt-4 mb-8">
44
<meta itemprop="position" content="{{ $loop->iteration }}">
55
@include('hyde::components.article-excerpt')

packages/framework/tests/Unit/Views/BlogPostFeedComponentViewTest.php

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,4 +67,27 @@ public function testPostFeedWithMultiplePosts()
6767
->assertSee('Jane Doe')
6868
->assertSeeHtml('</ol>');
6969
}
70+
71+
72+
public function testPostFeedWithCustomPosts()
73+
{
74+
Hyde::pages()->add(new MarkdownPost('global', ['author' => 'default'], 'Ignored post content'));
75+
76+
$customPosts = [
77+
new MarkdownPost('hello-world', ['author' => 'mr_hyde'], 'Hello World!'),
78+
new MarkdownPost('second-post', ['author' => 'jane_doe'], 'Another post content'),
79+
];
80+
81+
$view = $this->view(view('hyde::components.blog-post-feed', [
82+
'posts' => $customPosts,
83+
]));
84+
85+
$view->assertSeeHtml('<ol itemscope itemtype="https://schema.org/ItemList">')
86+
->assertDontSee('Ignored post content')
87+
->assertSee('Hello World')
88+
->assertSee('Mr. Hyde')
89+
->assertSee('Another post content')
90+
->assertSee('Jane Doe')
91+
->assertSeeHtml('</ol>');
92+
}
7093
}

0 commit comments

Comments
 (0)