Skip to content

Commit

Permalink
tests: MediaAtRootQuery tests
Browse files Browse the repository at this point in the history
  • Loading branch information
nikcio committed May 5, 2024
1 parent 80d547b commit 9548423
Show file tree
Hide file tree
Showing 11 changed files with 381 additions and 0 deletions.
Binary file not shown.
91 changes: 91 additions & 0 deletions src/Nikcio.UHeadless.IntegrationTests/ApiTests.MediaAtRootQuery.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
using System.Net.Http.Json;

namespace Nikcio.UHeadless.IntegrationTests.Defaults;

public partial class ApiTests
{
private const string _mediaAtRootSnapshotPath = $"{SnapshotConstants.BasePath}/MediaAtRoot";

[Theory]
[InlineData(1, 0, true)]
[InlineData(1, 1, true)]
[InlineData(2, 1, true)]
[InlineData(1, 1000, true)]
[InlineData(1000, 1000, true)]
[InlineData(1, 5, true)]
[InlineData(0, 5, false)]
[InlineData(-1, 5, false)]
[InlineData(0, -1, false)]
public async Task MediaAtRootQuery_Snaps_Async(
int page,
int pageSize,
bool expectSuccess)
{
var snapshotProvider = new SnapshotProvider($"{_mediaAtRootSnapshotPath}/Snaps");
HttpClient client = _factory.CreateClient();

using var request = JsonContent.Create(new
{
query = MediaAtRootQueries.GetItems,
variables = new
{
page,
pageSize,
}
});

HttpResponseMessage response = await client.PostAsync("/graphql", request).ConfigureAwait(true);

string responseContent = await response.Content.ReadAsStringAsync().ConfigureAwait(true);

string snapshotName = $"MediaAtRoot_Snaps_{page}_{pageSize}";

await snapshotProvider.AssertIsSnapshotEqualAsync(snapshotName, responseContent).ConfigureAwait(true);
Assert.Equal(expectSuccess, response.IsSuccessStatusCode);
}
}

public static class MediaAtRootQueries
{
public const string GetItems = """
query MediaAtRootQuery(
$page: Int!,
$pageSize: Int!
) {
mediaAtRoot(
page: $page,
pageSize: $pageSize
) {
items {
url(urlMode: ABSOLUTE)
properties {
...typedProperties
__typename
}
urlSegment
name
id
key
templateId
parent {
url(urlMode: ABSOLUTE)
properties {
...typedProperties
__typename
}
urlSegment
name
id
key
templateId
}
__typename
}
page
pageSize
totalItems
hasNextPage
}
}
""" + Fragments.TypedProperties;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"errors": [
{
"message": "Page must be greater than or equal to 1 (Parameter \u0027page\u0027)",
"locations": [
{
"line": 5,
"column": 3
}
],
"path": [
"mediaAtRoot"
]
}
],
"data": null
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"errors": [
{
"message": "Page must be greater than or equal to 1 (Parameter \u0027page\u0027)",
"locations": [
{
"line": 5,
"column": 3
}
],
"path": [
"mediaAtRoot"
]
}
],
"data": null
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"errors": [
{
"message": "Page must be greater than or equal to 1 (Parameter \u0027page\u0027)",
"locations": [
{
"line": 5,
"column": 3
}
],
"path": [
"mediaAtRoot"
]
}
],
"data": null
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"data": {
"mediaAtRoot": {
"items": [],
"page": 1000,
"pageSize": 1000,
"totalItems": 6,
"hasNextPage": false
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"data": {
"mediaAtRoot": {
"items": [],
"page": 1,
"pageSize": 0,
"totalItems": 6,
"hasNextPage": true
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"data": {
"mediaAtRoot": {
"items": [
{
"url": "http://localhost/media/oeklujof/skaermbillede-2023-04-17-kl-201527.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.27",
"id": 1138,
"key": "25ba1577-a0c5-4329-8f32-9e9abe4a6d2d",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
}
],
"page": 1,
"pageSize": 1,
"totalItems": 6,
"hasNextPage": true
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"data": {
"mediaAtRoot": {
"items": [
{
"url": "http://localhost/media/oeklujof/skaermbillede-2023-04-17-kl-201527.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.27",
"id": 1138,
"key": "25ba1577-a0c5-4329-8f32-9e9abe4a6d2d",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "http://localhost/media/eb3ogqdq/skaermbillede-2023-04-17-kl-201540.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.40",
"id": 1139,
"key": "40e37a26-8570-47dd-b30a-a1bd391f603b",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "http://localhost/media/z4bdynec/skaermbillede-2023-04-17-kl-201551.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.51",
"id": 1140,
"key": "343c83c9-1782-4db5-8e13-cdcddf7ab772",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "",
"properties": {
"__typename": "EmptyPropertyType"
},
"urlSegment": null,
"name": "My media",
"id": 1141,
"key": "01164aab-e1f7-4628-9e20-870b49951482",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "",
"properties": {
"__typename": "EmptyPropertyType"
},
"urlSegment": null,
"name": "My media 2",
"id": 1142,
"key": "10641d52-54ac-43d5-9f5e-9074642715bf",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "",
"properties": {
"__typename": "CustomMediaType"
},
"urlSegment": null,
"name": "Media custom",
"id": 1143,
"key": "d6355171-2e04-4b73-b11b-01f408ec242a",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
}
],
"page": 1,
"pageSize": 1000,
"totalItems": 6,
"hasNextPage": false
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{
"data": {
"mediaAtRoot": {
"items": [
{
"url": "http://localhost/media/oeklujof/skaermbillede-2023-04-17-kl-201527.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.27",
"id": 1138,
"key": "25ba1577-a0c5-4329-8f32-9e9abe4a6d2d",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "http://localhost/media/eb3ogqdq/skaermbillede-2023-04-17-kl-201540.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.40",
"id": 1139,
"key": "40e37a26-8570-47dd-b30a-a1bd391f603b",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "http://localhost/media/z4bdynec/skaermbillede-2023-04-17-kl-201551.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.51",
"id": 1140,
"key": "343c83c9-1782-4db5-8e13-cdcddf7ab772",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "",
"properties": {
"__typename": "EmptyPropertyType"
},
"urlSegment": null,
"name": "My media",
"id": 1141,
"key": "01164aab-e1f7-4628-9e20-870b49951482",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
},
{
"url": "",
"properties": {
"__typename": "EmptyPropertyType"
},
"urlSegment": null,
"name": "My media 2",
"id": 1142,
"key": "10641d52-54ac-43d5-9f5e-9074642715bf",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
}
],
"page": 1,
"pageSize": 5,
"totalItems": 6,
"hasNextPage": true
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"data": {
"mediaAtRoot": {
"items": [
{
"url": "http://localhost/media/eb3ogqdq/skaermbillede-2023-04-17-kl-201540.png",
"properties": {
"__typename": "Image"
},
"urlSegment": null,
"name": "Sk\u00E6rmbillede 2023 04 17 Kl. 20.15.40",
"id": 1139,
"key": "40e37a26-8570-47dd-b30a-a1bd391f603b",
"templateId": -1,
"parent": null,
"__typename": "MediaItem"
}
],
"page": 2,
"pageSize": 1,
"totalItems": 6,
"hasNextPage": true
}
}
}

0 comments on commit 9548423

Please sign in to comment.