Skip to main content
Glama

News Aggregator API

testresults.txt20.6 kB
{"numFailedTestSuites":1,"numFailedTests":5,"numPassedTestSuites":0,"numPassedTests":1,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":6,"openHandles":[],"snapshot":{"added":0,"didUpdate":false,"failure":false,"filesAdded":0,"filesRemoved":0,"filesRemovedList":[],"filesUnmatched":0,"filesUpdated":0,"matched":0,"total":0,"unchecked":0,"uncheckedKeysByFile":[],"unmatched":0,"updated":0},"startTime":1747624028489,"success":false,"testResults":[{"assertionResults":[{"ancestorTitles":["News API Integration Tests"],"duration":70,"failureDetails":[{"matcherResult":{"actual":false,"expected":true,"message":"\u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mtrue\u001b[39m\nReceived: \u001b[31mfalse\u001b[39m","name":"toBe","pass":false}}],"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mtrue\u001b[39m\nReceived: \u001b[31mfalse\u001b[39m\n at Object.<anonymous> (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\src\\__tests__\\api\\news-complete.test.ts:60:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"],"fullName":"News API Integration Tests GET /api/news/top should return top news articles","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"status":"failed","title":"GET /api/news/top should return top news articles"},{"ancestorTitles":["News API Integration Tests"],"duration":21,"failureDetails":[{"matcherResult":{"actual":false,"expected":true,"message":"\u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mtrue\u001b[39m\nReceived: \u001b[31mfalse\u001b[39m","name":"toBe","pass":false}}],"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mtrue\u001b[39m\nReceived: \u001b[31mfalse\u001b[39m\n at Object.<anonymous> (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\src\\__tests__\\api\\news-complete.test.ts:77:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"],"fullName":"News API Integration Tests GET /api/news/top with category filter should work","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"status":"failed","title":"GET /api/news/top with category filter should work"},{"ancestorTitles":["News API Integration Tests"],"duration":20,"failureDetails":[{"matcherResult":{"actual":false,"expected":true,"message":"\u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mtrue\u001b[39m\nReceived: \u001b[31mfalse\u001b[39m","name":"toBe","pass":false}}],"failureMessages":["Error: \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\nExpected: \u001b[32mtrue\u001b[39m\nReceived: \u001b[31mfalse\u001b[39m\n at Object.<anonymous> (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\src\\__tests__\\api\\news-complete.test.ts:88:47)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)"],"fullName":"News API Integration Tests GET /api/news/all should support pagination","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"status":"failed","title":"GET /api/news/all should support pagination"},{"ancestorTitles":["News API Integration Tests"],"duration":50,"failureDetails":[{}],"failureMessages":["Error: expected 200 \"OK\", got 400 \"Bad Request\"\n at Object.<anonymous> (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\src\\__tests__\\api\\news-complete.test.ts:99:8)\n at Promise.then.completed (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\utils.js:231:10)\n at _callCircusTest (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:316:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:252:3)\n at _runTestsForDescribeBlock (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:126:9)\n at _runTestsForDescribeBlock (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:121:9)\n at run (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:71:3)\n at runAndTransformResultsToJestFormat (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\legacy-code-todo-rewrite\\jestAdapterInit.js:122:21)\n at jestAdapter (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\legacy-code-todo-rewrite\\jestAdapter.js:79:19)\n at runTestInternal (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-runner\\build\\runTest.js:367:16)\n at runTest (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-runner\\build\\runTest.js:444:34)\n----\n at Test._assertStatus (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:267:14)\n at C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:323:13\n at Test._assertFunction (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:300:13)\n at Test.assert (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:179:23)\n at Server.localAssert (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:135:14)\n at Object.onceWrapper (node:events:632:28)\n at Server.emit (node:events:518:28)\n at emitCloseNT (node:net:2416:8)\n at processTicksAndRejections (node:internal/process/task_queues:89:21)"],"fullName":"News API Integration Tests GET /api/news/uuid/:uuid should return a specific article","invocations":1,"location":null,"numPassingAsserts":0,"retryReasons":[],"status":"failed","title":"GET /api/news/uuid/:uuid should return a specific article"},{"ancestorTitles":["News API Integration Tests"],"duration":43,"failureDetails":[{}],"failureMessages":["Error: expected 404 \"Not Found\", got 400 \"Bad Request\"\n at Object.<anonymous> (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\src\\__tests__\\api\\news-complete.test.ts:111:8)\n at Promise.then.completed (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\utils.js:298:28)\n at new Promise (<anonymous>)\n at callAsyncCircusFn (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\utils.js:231:10)\n at _callCircusTest (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:316:40)\n at processTicksAndRejections (node:internal/process/task_queues:105:5)\n at _runTest (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:252:3)\n at _runTestsForDescribeBlock (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:126:9)\n at _runTestsForDescribeBlock (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:121:9)\n at run (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\run.js:71:3)\n at runAndTransformResultsToJestFormat (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\legacy-code-todo-rewrite\\jestAdapterInit.js:122:21)\n at jestAdapter (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-circus\\build\\legacy-code-todo-rewrite\\jestAdapter.js:79:19)\n at runTestInternal (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-runner\\build\\runTest.js:367:16)\n at runTest (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\jest-runner\\build\\runTest.js:444:34)\n----\n at Test._assertStatus (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:267:14)\n at C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:323:13\n at Test._assertFunction (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:300:13)\n at Test.assert (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:179:23)\n at Server.localAssert (C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\node_modules\\supertest\\lib\\test.js:135:14)\n at Object.onceWrapper (node:events:632:28)\n at Server.emit (node:events:518:28)\n at emitCloseNT (node:net:2416:8)\n at processTicksAndRejections (node:internal/process/task_queues:89:21)"],"fullName":"News API Integration Tests GET /api/news/uuid/:uuid should return 404 for non-existent article","invocations":1,"location":null,"numPassingAsserts":0,"retryReasons":[],"status":"failed","title":"GET /api/news/uuid/:uuid should return 404 for non-existent article"},{"ancestorTitles":["News API Integration Tests"],"duration":35,"failureDetails":[],"failureMessages":[],"fullName":"News API Integration Tests API should use cache for repeated requests","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"status":"passed","title":"API should use cache for repeated requests"}],"endTime":1747624030034,"message":"\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mNews API Integration Tests › GET /api/news/top should return top news articles\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\n Expected: \u001b[32mtrue\u001b[39m\n Received: \u001b[31mfalse\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 58 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 59 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39msuccess)\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 60 |\u001b[39m expect(\u001b[33mArray\u001b[39m\u001b[33m.\u001b[39misArray(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mdata))\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 61 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 62 |\u001b[39m \u001b[36mif\u001b[39m (response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mdata\u001b[33m.\u001b[39mlength \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\u001b[22m\n\u001b[2m \u001b[90m 63 |\u001b[39m \u001b[36mconst\u001b[39m article \u001b[33m=\u001b[39m response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mdata[\u001b[35m0\u001b[39m]\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.<anonymous> (\u001b[22m\u001b[2m\u001b[0m\u001b[36msrc/__tests__/api/news-complete.test.ts\u001b[39m\u001b[0m\u001b[2m:60:47)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mNews API Integration Tests › GET /api/news/top with category filter should work\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\n Expected: \u001b[32mtrue\u001b[39m\n Received: \u001b[31mfalse\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 75 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 76 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39msuccess)\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 77 |\u001b[39m expect(\u001b[33mArray\u001b[39m\u001b[33m.\u001b[39misArray(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mdata))\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 78 |\u001b[39m })\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 79 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 80 |\u001b[39m \u001b[90m// Test: Get news with pagination\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.<anonymous> (\u001b[22m\u001b[2m\u001b[0m\u001b[36msrc/__tests__/api/news-complete.test.ts\u001b[39m\u001b[0m\u001b[2m:77:47)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mNews API Integration Tests › GET /api/news/all should support pagination\u001b[39m\u001b[22m\n\n \u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoBe\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m) // Object.is equality\u001b[22m\n\n Expected: \u001b[32mtrue\u001b[39m\n Received: \u001b[31mfalse\u001b[39m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 86 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 87 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39msuccess)\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 88 |\u001b[39m expect(\u001b[33mArray\u001b[39m\u001b[33m.\u001b[39misArray(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mdata))\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 89 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mmeta)\u001b[33m.\u001b[39mtoBeDefined()\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 90 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mmeta)\u001b[33m.\u001b[39mtoHaveProperty(\u001b[32m'page'\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 91 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mmeta)\u001b[33m.\u001b[39mtoHaveProperty(\u001b[32m'limit'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.<anonymous> (\u001b[22m\u001b[2m\u001b[0m\u001b[36msrc/__tests__/api/news-complete.test.ts\u001b[39m\u001b[0m\u001b[2m:88:47)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mNews API Integration Tests › GET /api/news/uuid/:uuid should return a specific article\u001b[39m\u001b[22m\n\n expected 200 \"OK\", got 400 \"Bad Request\"\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 97 |\u001b[39m \u001b[33m.\u001b[39m\u001b[36mget\u001b[39m(\u001b[32m'/api/news/uuid/test-uuid-1'\u001b[39m)\u001b[22m\n\u001b[2m \u001b[90m 98 |\u001b[39m \u001b[33m.\u001b[39mexpect(\u001b[32m'Content-Type'\u001b[39m\u001b[33m,\u001b[39m \u001b[35m/json/\u001b[39m)\u001b[22m\n\u001b[2m \u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 99 |\u001b[39m \u001b[33m.\u001b[39mexpect(\u001b[35m200\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 100 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 101 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39msuccess)\u001b[33m.\u001b[39mtoBe(\u001b[36mtrue\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 102 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39mdata)\u001b[33m.\u001b[39mtoHaveProperty(\u001b[32m'uuid'\u001b[39m)\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.<anonymous> (\u001b[22m\u001b[2m\u001b[0m\u001b[36msrc/__tests__/api/news-complete.test.ts\u001b[39m\u001b[0m\u001b[2m:99:8)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m ----\u001b[22m\n\u001b[2m \u001b[2mat Test._assertStatus (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:267:14)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat \u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:323:13\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Test._assertFunction (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:300:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Test.assert (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:179:23)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Server.localAssert (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:135:14)\u001b[22m\u001b[2m\u001b[22m\n\n\u001b[1m\u001b[31m \u001b[1m● \u001b[22m\u001b[1mNews API Integration Tests › GET /api/news/uuid/:uuid should return 404 for non-existent article\u001b[39m\u001b[22m\n\n expected 404 \"Not Found\", got 400 \"Bad Request\"\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[0m \u001b[90m 109 |\u001b[39m \u001b[33m.\u001b[39m\u001b[36mget\u001b[39m(\u001b[32m'/api/news/uuid/non-existent-uuid'\u001b[39m)\u001b[22m\n\u001b[2m \u001b[90m 110 |\u001b[39m \u001b[33m.\u001b[39mexpect(\u001b[32m'Content-Type'\u001b[39m\u001b[33m,\u001b[39m \u001b[35m/json/\u001b[39m)\u001b[22m\n\u001b[2m \u001b[31m\u001b[1m>\u001b[22m\u001b[2m\u001b[39m\u001b[90m 111 |\u001b[39m \u001b[33m.\u001b[39mexpect(\u001b[35m404\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[2m\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 112 |\u001b[39m \u001b[22m\n\u001b[2m \u001b[90m 113 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39msuccess)\u001b[33m.\u001b[39mtoBe(\u001b[36mfalse\u001b[39m)\u001b[33m;\u001b[39m\u001b[22m\n\u001b[2m \u001b[90m 114 |\u001b[39m expect(response\u001b[33m.\u001b[39mbody\u001b[33m.\u001b[39merror)\u001b[33m.\u001b[39mtoBeDefined()\u001b[33m;\u001b[39m\u001b[0m\u001b[22m\n\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Object.<anonymous> (\u001b[22m\u001b[2m\u001b[0m\u001b[36msrc/__tests__/api/news-complete.test.ts\u001b[39m\u001b[0m\u001b[2m:111:8)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m ----\u001b[22m\n\u001b[2m \u001b[2mat Test._assertStatus (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:267:14)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat \u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:323:13\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Test._assertFunction (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:300:13)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Test.assert (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:179:23)\u001b[22m\u001b[2m\u001b[22m\n\u001b[2m \u001b[2mat Server.localAssert (\u001b[22m\u001b[2mnode_modules/supertest/lib/test.js\u001b[2m:135:14)\u001b[22m\u001b[2m\u001b[22m\n","name":"C:\\Users\\malac\\CascadeProjects\\news-aggregator-api\\src\\__tests__\\api\\news-complete.test.ts","startTime":1747624028782,"status":"failed","summary":""}],"wasInterrupted":false}

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Malachi-devel/the-news-api-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server