Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: Organize tests in the game/ folder #1403

Merged
merged 14 commits into from
Feb 28, 2022

Conversation

st-pasha
Copy link
Contributor

Description

This continues the work from #1386, this time I refactor the tests in the game/ directory. As before, the goal is to:

  • Make sure that we only use properly initialized game instances;
  • Consistent tests structure (e.g. tests for class Foo must be in file foo_test.dart, etc);
  • Use available helper functions such as failsAssert where appropriate.

No tests were removed or significantly modified in the process. Several tests were added.

Checklist

  • The title of my PR starts with a Conventional Commit prefix (fix:, feat:, docs: etc).
  • I have read the Contributor Guide and followed the process outlined for submitting PRs.
  • I have updated/added tests for ALL new/updated/fixed functionality.
  • (NA) I have updated/added relevant documentation in docs and added dartdoc comments with ///.
  • (NA) I have updated/added relevant examples in examples.

Breaking Change

  • No, this is not a breaking change.

Related Issues

WIP for #1351

Copy link
Member

@spydon spydon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice with some spring cleaning!


group('components', () {
testWithFlameGame(
'Add component',
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These seem to sometimes be capitalized and sometimes not?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A top-level group is the name of the class, so it's capitalized. Groups inside groups don't have any special capitalization rules, similar to individual tests.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not that it matters that much, but since we are organizing this now anyways, shouldn't we conform to using one of the options? Doesn't matter which one to me.

KurtLa and others added 3 commits February 27, 2022 15:43
…ine#1404)

* Add missing optional priority to SpriteBodyComponent

Gives you the option to set the priority directly when creating the component.

* Add optional parameter priority

Adds priority as an optional parameter

* removed wrong trailing comma

Added a comma at the wrong position.
@spydon
Copy link
Member

spydon commented Feb 28, 2022

Looks like something went wrong with the merge/rebase of main?

@st-pasha
Copy link
Contributor Author

Apparently it fixed itself now.

@erickzanardo erickzanardo enabled auto-merge (squash) February 28, 2022 13:04
@erickzanardo erickzanardo merged commit 102a27c into flame-engine:main Feb 28, 2022
@st-pasha st-pasha deleted the ps/tests3 branch March 4, 2022 06:06
st-pasha added a commit to st-pasha/flame that referenced this pull request Mar 9, 2022
* position_type_test

* detectors_test

* reformat projections_test

* Reorganize tests in projector_test

* review flame_game_test

* move some cameratests

* created viewport_test file

* reformat camera tests

* feat: Add missing optional priority to SpriteBodyComponent (flame-engine#1404)

* Add missing optional priority to SpriteBodyComponent

Gives you the option to set the priority directly when creating the component.

* Add optional parameter priority

Adds priority as an optional parameter

* removed wrong trailing comma

Added a comma at the wrong position.

* feat:  Added getImageLayer to flame_tiled (flame-engine#1405)

* feat: Create sphinx extension for integrating Flutter apps into the documentation site (flame-engine#1393)

Co-authored-by: KurtLa <KurtLa@users.noreply.github.com>
Co-authored-by: Munsterlander <munsterlander@users.noreply.github.com>
Co-authored-by: Erick <erickzanardoo@gmail.com>
spydon added a commit that referenced this pull request Mar 9, 2022
* ProcessQueues() method

* Added deadQueue in LifecycleManager

* refactor removeFromParent()

* make shouldRemove non-overridable

* Added lifecycle state "removing"

* prevent double-removal

* shouldRemove can only be set to true

* eliminate _shouldRemove

* rename _dead -> _dying

* added adoption queue

* removed nextParent

* deprecate ComponentSet.clear and .removeAll

* ComponentSet no longer handles removal

* remove usages of shouldRemove

* doc-comments

* onRemove refactor

* cleanup

* remove obsolete paragraph in docs

* rename queue dying -> removals

* feat: update examples dashbook (#1398)

* docs: Added tutorial for creating a bare Flame project (#1376)

* feat: Add missing optional priority to SpriteBodyComponent (#1404)

* Add missing optional priority to SpriteBodyComponent

Gives you the option to set the priority directly when creating the component.

* Add optional parameter priority

Adds priority as an optional parameter

* removed wrong trailing comma

Added a comma at the wrong position.

* feat:  Added getImageLayer to flame_tiled (#1405)

* feat: Create sphinx extension for integrating Flutter apps into the documentation site (#1393)

* feat: adding FlameBloc mixin to allow its usage with enhanced FlameGame classes (#1399)

* feat: adding FlameBloc mixin to allow its usage with enhanced FlameGame classes

* fixing tests

* Apply suggestions from code review

Co-authored-by: Lukas Klingsbo <me@lukas.fyi>
Co-authored-by: Pasha Stetsenko <stpasha@google.com>
Co-authored-by: Luan Nico <luanpotter27@gmail.com>

Co-authored-by: Lukas Klingsbo <me@lukas.fyi>
Co-authored-by: Pasha Stetsenko <stpasha@google.com>
Co-authored-by: Luan Nico <luanpotter27@gmail.com>

* refactor: Organize tests in the game/ folder (#1403)

* position_type_test

* detectors_test

* reformat projections_test

* Reorganize tests in projector_test

* review flame_game_test

* move some cameratests

* created viewport_test file

* reformat camera tests

* feat: Add missing optional priority to SpriteBodyComponent (#1404)

* Add missing optional priority to SpriteBodyComponent

Gives you the option to set the priority directly when creating the component.

* Add optional parameter priority

Adds priority as an optional parameter

* removed wrong trailing comma

Added a comma at the wrong position.

* feat:  Added getImageLayer to flame_tiled (#1405)

* feat: Create sphinx extension for integrating Flutter apps into the documentation site (#1393)

Co-authored-by: KurtLa <KurtLa@users.noreply.github.com>
Co-authored-by: Munsterlander <munsterlander@users.noreply.github.com>
Co-authored-by: Erick <erickzanardoo@gmail.com>

* feat: improving generics on position body component (#1397)

* chore(release): publish packages (#1407)

- flame@1.1.0-releasecandidate.1
 - flame_bloc@1.2.0-releasecandidate.1
 - flame_rive@1.1.0-releasecandidate.1
 - flame_test@1.2.0-releasecandidate.1
 - flame_tiled@1.3.0-releasecandidate.1

* chore: fixing pub deps to allow publish (#1408)

* chore(release): publish packages

 - flame@1.1.0-releasecandidate.1
 - flame_bloc@1.2.0-releasecandidate.1
 - flame_rive@1.1.0-releasecandidate.1
 - flame_test@1.2.0-releasecandidate.1
 - flame_tiled@1.3.0-releasecandidate.1

* chore: fixing deps to enable pub publish

* fixing vector math version

* chore(flame_forge2d): export all files in barrel file (#1409)

* chore(release): publish packages (#1410)

- flame_forge2d@0.9.0-releasecandidate.1

* chore: commented out PR template sections (#1412)

* feat: Make ContactCallback begin end methods optional overrides (#1415)

* feat: made begin and end optional overrides

* chore: removed unecessary end override

* feat: Camera as a component (#1355)

* feat(collision detection)!: Use a broadphase to make collision detection more efficient (#1252)

* fix: PositionBodyComponent had an async onMount, without needing (#1424)

* fix: Fix collision detection comments and typo (#1422)

* Fix collision detection comments and typo

* Update packages/flame/lib/src/collisions/collision_callbacks.dart

Co-authored-by: Pasha Stetsenko <stpasha@google.com>

* Update doc/flame/collision_detection.md

Co-authored-by: Pasha Stetsenko <stpasha@google.com>

Co-authored-by: Pasha Stetsenko <stpasha@google.com>

* feat: adding has mounted to component (#1418)

* feat: adding has mounted to component

* feat: pr suggestions

* feat: improving hasMounted

* feat: renaming hasMounted to mounted

* feat: pr suggestion

* chore(release): publish packages (#1427)

- flame_svg@1.1.0-releasecandidate.1
 - flame@1.1.0-releasecandidate.2
 - flame_bloc@1.2.0-releasecandidate.2
 - flame_forge2d@0.9.0-releasecandidate.2
 - flame_rive@1.1.0-releasecandidate.2
 - flame_test@1.2.0-releasecandidate.2
 - flame_tiled@1.3.0-releasecandidate.2

* fix a test

* fix broken merge

* rename parent->owner in LifecycleManager

* update doc-comment

Co-authored-by: Erick <erickzanardoo@gmail.com>
Co-authored-by: KurtLa <KurtLa@users.noreply.github.com>
Co-authored-by: Munsterlander <munsterlander@users.noreply.github.com>
Co-authored-by: Lukas Klingsbo <me@lukas.fyi>
Co-authored-by: Luan Nico <luanpotter27@gmail.com>
Co-authored-by: Allison Ryan <77211884+allisonryan0002@users.noreply.github.com>
Co-authored-by: Alejandro Santiago <dev@alestiago.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants