Skip to content

Tests currently failing on master #8

@dalanmiller

Description

@dalanmiller

Hey again @apazzolini, I'd like to get the repo into a state where I can work on improvements to the client. But at the moment all the tests seem to be failing and I don't quite understand why.

Note that the majority of tests will require an available PostgreSQL database. Each test will run in its own self-contained DB seeded with test/seed.sql and the DB will be dropped after the test.

Currently, most of the tests are failing when running yarn jest even though the above paragraph indicates that the database will be pre-seeded and/or the static fixtures will be used instead. But I get the following:

❯ yarn test                                                                                                                                            ✔  2307  11:27:56
yarn run v1.22.4
$ jest
 FAIL  src/lib/TemporarySet.test.js
  ● TemporarySet › clears item after the timeout

    expect(received).toEqual(expected)

    Expected value to equal:
      []
    Received:
      [2]

    Difference:

    - Expected
    + Received

    - Array []
    + Array [
    +   2,
    + ]

      27 |         setTimeout(() => expect([...s]).toEqual([1, 2]), 70)
      28 |         setTimeout(() => expect([...s]).toEqual([2]), 110)
    > 29 |         setTimeout(() => expect([...s]).toEqual([]), 210)
      30 |
      31 |         await Promise.delay(250)
      32 |     })

      at Timeout.setTimeout (src/lib/TemporarySet.test.js:29:41)

 FAIL  src/resolvers/all.test.js
  ● model :: Player and Match › retrieves new players from the PUBG api

    expect(value).toMatchSnapshot()

    Received value does not match stored snapshot 1.

    - Snapshot
    + Received

      Object {
        "result": Object {
          "data": Object {
    -       "player": Object {
    -         "id": "account.a36bed11ed214557b0ddef9ef1a56d07",
    -         "matches": Array [
    -           Object {
    -             "id": "d9719859-5d8d-4a39-ab02-de41758b5632",
    -           },
    -           Object {
    -             "id": "9d6f836b-a7f1-43d6-ac82-1d2c149952d9",
    -           },
    -           Object {
    -             "id": "b6a4e260-6bf0-4395-9cb4-846f8e3b92e3",
    -           },
    -           Object {
    -             "id": "742382c5-6139-4879-a3e6-65677baaae69",
    -           },
    -           Object {
    -             "id": "97c15fbe-1b34-41be-b700-1e340af63d94",
    -           },
    -           Object {
    -             "id": "bc49df15-f847-4874-87e7-392d1a2030f1",
    -           },
    -           Object {
    -             "id": "f03394d9-e9df-46df-974b-730ded3a3531",
    -           },
    -           Object {
    -             "id": "18ea21fa-40d3-4435-ac2e-71dab5c506ba",
    -           },
    -           Object {
    -             "id": "96c554c0-7e73-4139-acbf-b6a80237eaf5",
    -           },
    -           Object {
    -             "id": "d0716a8a-ad4d-45bc-a410-ff5b0801b5d5",
    -           },
    -           Object {
    -             "id": "7a18ac6d-6baa-467b-87c5-e9b555ac9c82",
    -           },
    -           Object {
    -             "id": "cd2be27f-ee97-47fe-80b0-d35cfbbad106",
    -           },
    -           Object {
    -             "id": "c79f027b-49cd-49dc-b7a3-a85b140a459b",
    -           },
    -           Object {
    -             "id": "b9975379-ba62-459f-83a9-bbca31a3c24f",
    -           },
    -           Object {
    -             "id": "c8a79952-cd63-45ed-b2fd-04deafa44797",
    -           },
    -           Object {
    -             "id": "e2b4aa8d-8846-4720-987c-b1a480e1a377",
    -           },
    -           Object {
    -             "id": "bc9f481f-ced4-4598-9df5-93e747d3685b",
    -           },
    -           Object {
    -             "id": "0837df06-4703-4ff0-a10e-e328b526451b",
    -           },
    -           Object {
    -             "id": "6f6797ae-190d-43a9-8ae3-ad7fe50f5fa9",
    -           },
    -           Object {
    -             "id": "cf7406f8-aaad-4d0b-ad86-8475f9328f82",
    -           },
    -           Object {
    -             "id": "51629acf-393e-49b0-9501-7e3ca3436f83",
    -           },
    -           Object {
    -             "id": "7cc05145-3525-4ff0-8307-00d0de88505e",
    -           },
    -           Object {
    -             "id": "001ea16c-4413-4375-bd87-ca5d4ddb41a7",
    -           },
    -           Object {
    -             "id": "cb9eec54-9fb7-4211-a8f4-e8426e44cd5a",
    -           },
    -           Object {
    -             "id": "9e4dfcfd-686e-437c-916a-fedb2513d1ca",
    -           },
    -           Object {
    -             "id": "ea60f7b9-0bd0-4b76-9fdc-967b8fd0e80f",
    -           },
    -           Object {
    -             "id": "b0bf93d3-033b-4f9a-8be8-18e49ae7e63e",
    -           },
    -           Object {
    -             "id": "fca1b66c-a7a4-44d1-882f-6dbe70fd79fe",
    -           },
    -           Object {
    -             "id": "bd76dc47-bd93-4d20-a539-82f5505205eb",
    -           },
    -           Object {
    -             "id": "989f0d97-8428-4b2b-8973-026891f4e4db",
    -           },
    -           Object {
    -             "id": "ee6d6b0e-e8aa-4a8b-9539-ad45517b5518",
    -           },
    -           Object {
    -             "id": "18cb9ca1-7b7f-4acf-8b5b-9eee4c15876e",
    -           },
    -           Object {
    -             "id": "17dfc0b7-fd2b-40f0-b38f-0fc2a6bb26ce",
    -           },
    -           Object {
    -             "id": "c6631faa-6cac-4c4d-a88e-2fd17eb1f5bd",
    -           },
    -           Object {
    -             "id": "0eea2abb-51c1-491a-baa6-407f4f0a2e86",
    -           },
    -           Object {
    -             "id": "3f3c09fb-6415-472b-a543-43479239e73a",
    -           },
    -           Object {
    -             "id": "464ebf95-7b54-4bec-98f5-bddf3ffb567d",
    -           },
    -           Object {
    -             "id": "26880e2d-ed3d-48f8-9022-73d24ec89f24",
    -           },
    -           Object {
    -             "id": "64741cf3-b35c-420a-8e45-8603d64060fd",
    -           },
    -           Object {
    -             "id": "cdd12f3d-b639-4d9f-9ec4-1196f75f981e",
    -           },
    -         ],
    -         "name": "BreaK",
    -       },
    +       "player": null,
          },
        },
        "statusCode": 200,
      }

      32 |                 }
      33 |             }
    > 34 |         `)).toMatchSnapshot()
      35 |
      36 |         expect(Player.createOrUpdate).toHaveBeenCalled()
      37 |     })

      at Object.test (src/resolvers/all.test.js:34:13)

  ● model :: Player and Match › re-requesting a player retrieves it from the db

    expect(value).toMatchSnapshot()

    Received value does not match stored snapshot 1.

    - Snapshot
    + Received

      Object {
        "result": Object {
          "data": Object {
    -       "player": Object {
    -         "id": "account.a36bed11ed214557b0ddef9ef1a56d07",
    -         "matches": Array [
    -           Object {
    -             "id": "d9719859-5d8d-4a39-ab02-de41758b5632",
    -           },
    -           Object {
    -             "id": "9d6f836b-a7f1-43d6-ac82-1d2c149952d9",
    -           },
    -           Object {
    -             "id": "b6a4e260-6bf0-4395-9cb4-846f8e3b92e3",
    -           },
    -           Object {
    -             "id": "742382c5-6139-4879-a3e6-65677baaae69",
    -           },
    -           Object {
    -             "id": "97c15fbe-1b34-41be-b700-1e340af63d94",
    -           },
    -           Object {
    -             "id": "bc49df15-f847-4874-87e7-392d1a2030f1",
    -           },
    -           Object {
    -             "id": "f03394d9-e9df-46df-974b-730ded3a3531",
    -           },
    -           Object {
    -             "id": "18ea21fa-40d3-4435-ac2e-71dab5c506ba",
    -           },
    -           Object {
    -             "id": "96c554c0-7e73-4139-acbf-b6a80237eaf5",
    -           },
    -           Object {
    -             "id": "d0716a8a-ad4d-45bc-a410-ff5b0801b5d5",
    -           },
    -           Object {
    -             "id": "7a18ac6d-6baa-467b-87c5-e9b555ac9c82",
    -           },
    -           Object {
    -             "id": "cd2be27f-ee97-47fe-80b0-d35cfbbad106",
    -           },
    -           Object {
    -             "id": "c79f027b-49cd-49dc-b7a3-a85b140a459b",
    -           },
    -           Object {
    -             "id": "b9975379-ba62-459f-83a9-bbca31a3c24f",
    -           },
    -           Object {
    -             "id": "c8a79952-cd63-45ed-b2fd-04deafa44797",
    -           },
    -           Object {
    -             "id": "e2b4aa8d-8846-4720-987c-b1a480e1a377",
    -           },
    -           Object {
    -             "id": "bc9f481f-ced4-4598-9df5-93e747d3685b",
    -           },
    -           Object {
    -             "id": "0837df06-4703-4ff0-a10e-e328b526451b",
    -           },
    -           Object {
    -             "id": "6f6797ae-190d-43a9-8ae3-ad7fe50f5fa9",
    -           },
    -           Object {
    -             "id": "cf7406f8-aaad-4d0b-ad86-8475f9328f82",
    -           },
    -           Object {
    -             "id": "51629acf-393e-49b0-9501-7e3ca3436f83",
    -           },
    -           Object {
    -             "id": "7cc05145-3525-4ff0-8307-00d0de88505e",
    -           },
    -           Object {
    -             "id": "001ea16c-4413-4375-bd87-ca5d4ddb41a7",
    -           },
    -           Object {
    -             "id": "cb9eec54-9fb7-4211-a8f4-e8426e44cd5a",
    -           },
    -           Object {
    -             "id": "9e4dfcfd-686e-437c-916a-fedb2513d1ca",
    -           },
    -           Object {
    -             "id": "ea60f7b9-0bd0-4b76-9fdc-967b8fd0e80f",
    -           },
    -           Object {
    -             "id": "b0bf93d3-033b-4f9a-8be8-18e49ae7e63e",
    -           },
    -           Object {
    -             "id": "fca1b66c-a7a4-44d1-882f-6dbe70fd79fe",
    -           },
    -           Object {
    -             "id": "bd76dc47-bd93-4d20-a539-82f5505205eb",
    -           },
    -           Object {
    -             "id": "989f0d97-8428-4b2b-8973-026891f4e4db",
    -           },
    -           Object {
    -             "id": "ee6d6b0e-e8aa-4a8b-9539-ad45517b5518",
    -           },
    -           Object {
    -             "id": "18cb9ca1-7b7f-4acf-8b5b-9eee4c15876e",
    -           },
    -           Object {
    -             "id": "17dfc0b7-fd2b-40f0-b38f-0fc2a6bb26ce",
    -           },
    -           Object {
    -             "id": "c6631faa-6cac-4c4d-a88e-2fd17eb1f5bd",
    -           },
    -           Object {
    -             "id": "0eea2abb-51c1-491a-baa6-407f4f0a2e86",
    -           },
    -           Object {
    -             "id": "3f3c09fb-6415-472b-a543-43479239e73a",
    -           },
    -           Object {
    -             "id": "464ebf95-7b54-4bec-98f5-bddf3ffb567d",
    -           },
    -           Object {
    -             "id": "26880e2d-ed3d-48f8-9022-73d24ec89f24",
    -           },
    -           Object {
    -             "id": "64741cf3-b35c-420a-8e45-8603d64060fd",
    -           },
    -           Object {
    -             "id": "cdd12f3d-b639-4d9f-9ec4-1196f75f981e",
    -           },
    -         ],
    -         "name": "BreaK",
    -       },
    +       "player": null,
          },
        },
        "statusCode": 200,
      }

      48 |                 }
      49 |             }
    > 50 |         `)).toMatchSnapshot()
      51 |         expect(Player.createOrUpdate).not.toHaveBeenCalled()
      52 |     })
      53 |

      at Object.test (src/resolvers/all.test.js:50:13)

  ● model :: Player and Match › re-requesting a player refreshes matches if enough time has passed

    expect(jest.fn()).toHaveBeenCalled()

    Expected mock function to have been called.

      73 |             }
      74 |         `)
    > 75 |         expect(Player.createOrUpdate).toHaveBeenCalled()
      76 |     })
      77 |
      78 |     test('re-requesting a player refreshes matches earlier if has lower fetch interval', async () => {

      at Object.test (src/resolvers/all.test.js:75:39)

  ● model :: Player and Match › re-requesting a player refreshes matches earlier if has lower fetch interval

    expect(jest.fn()).toHaveBeenCalled()

    Expected mock function to have been called.

      102 |             }
      103 |         `)
    > 104 |         expect(Player.createOrUpdate).toHaveBeenCalled()
      105 |     })
      106 |
      107 |     test('retrieves match data from the PUBG api', async () => {

      at Object.test (src/resolvers/all.test.js:104:39)

  ● model :: Player and Match › retrieves match data from the PUBG api

    expect(received).toMatchObject(expected)

    Expected value to match object:
      {"result": {"data": {"match": {"id": null, "telemetryUrl": Any<String>}}}}
    Received:
      {"result": {"errors": [{"locations": [{"column": 29, "line": 15}], "message": "Cannot query field \"DBNOs\" on type \"MatchStats\"."}]}, "statusCode": 400}
    Difference:
    - Expected
    + Received

      Object {
        "result": Object {
    -     "data": Object {
    -       "match": Object {
    -         "id": null,
    -         "telemetryUrl": Any<String>,
    +     "errors": Array [
    +       Object {
    +         "locations": Array [
    +           Object {
    +             "column": 29,
    +             "line": 15,
                },
    +         ],
    +         "message": "Cannot query field \"DBNOs\" on type \"MatchStats\".",
            },
    +     ],
        },
      }

      133 |                 }
      134 |             }
    > 135 |         `)).toMatchObject({
      136 |             result: {
      137 |                 data: {
      138 |                     match: {

      at Object.test (src/resolvers/all.test.js:135:13)

 › 2 snapshot tests failed.
Snapshot Summary
 › 2 snapshot tests failed in 1 test suite. Inspect your code changes or run `yarn test -u` to update them.

Test Suites: 2 failed, 2 total
Tests:       6 failed, 2 passed, 8 total
Snapshots:   2 failed, 2 total
Time:        12.433s
Ran all test suites.
error Command failed with exit code 1.

I've managed to replicate the test environment in Github Actions here: https://github.com/dalanmiller/api/blob/master/.github/workflows/nodejs.yml

I know you mentioned no longer being interested in maintaining the project as you no longer play PUBG, so I think if you can get me to a good spot in terms of maintenance, I'd be happy to try and start taking this off your hands!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions