Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

tests: improve for GeneratePermutations#1263

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
raklaptudirm merged 13 commits intoTheAlgorithms:masterfromkho-kho-kho:master
Nov 13, 2022

Conversation

kho-kho-kho
Copy link
Contributor

@kho-kho-khokho-kho-kho commentedNov 10, 2022
edited by gitpod-iobot
Loading

Open in Gitpod know more

Describe your change:

The original test was very limited and enforced a strict ordering of the results which the algorithm doesn't guarantee. I've loosened that restriction, and added two extra "complete" tests containing elements besides numbers.

For tests where we don't want to hardcode every possible result I've added a sanity check that will at least verify whether the number of results is accurate.

  • Add an algorithm?
  • Fix a bug or typo in an existing algorithm?
  • Documentation change?

Checklist:

  • I have readCONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new JavaScript files are placed inside an existing directory.
  • All filenames should use the UpperCamelCase (PascalCase) style. There should be no spaces in filenames.
    Example:UserProfile.js is allowed butuserprofile.js,Userprofile.js,user-Profile.js,userProfile.js are not
  • All new algorithms have a URL in its comments that points to Wikipedia or other similar explanation.
  • If this pull request resolves one or more open issues then the commit message containsFixes: #{$ISSUE_NO}.

The original insertBalance function was doing raw value comparisons as opposed to using the tree's comparator. This is clearly unintentional, and would (ultimately) cause the structure to segfault when constructed with the stringData included in the updated test.I've added the fix, scanned the rest of the code for similar issues, and added the appropriate test case which passes successfully with the fix. The jest code coverage increases slightly as well with the changes.
Added a couple of extra elements to the original test tree, and then removed elements in an order such that all previously uncovered branches of code are now covered.Also added an emptyTree structure to test some additional (trivial) base cases.
missed this from my previous commit
An iterative analog to the traditional recursive breadth-first-search algorithm for binary trees.This in-place solution uses the pre-existing "traversal" array for both tracking the algorithm as well as storing the result.Also tweaked old code by resetting the traversal array each time the tree is traversed (otherwise you're only allowed to traverse a tree once which doesn't seem correct even with a single traversal function).
got rid of unnecessary currentSizeadded currentNode for clarity
.. per earlier discussion w modsalso tweaked the tests to achieve 100% coverage
Original test was very limited and also (unnecessarily) strict in that the order of results mattered.I've tweaked the original test so that results can come in any order. Also added additional tests for smaller arrays of strings/booleans. Finally added some sanity testing for larger input arrays.
appgurueu
appgurueu previously approved these changesNov 10, 2022
Factorials are now explicit in the last set of tests.
Leverage package's existing factorial function.
@raklaptudirmraklaptudirm changed the titleTweak and flesh out tests for GeneratePermutationstests: improve for GeneratePermutationsNov 13, 2022
@raklaptudirmraklaptudirm merged commit71d3d44 intoTheAlgorithms:masterNov 13, 2022
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@appgurueuappgurueuappgurueu approved these changes

@raklaptudirmraklaptudirmraklaptudirm approved these changes

Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

3 participants
@kho-kho-kho@appgurueu@raklaptudirm

[8]ページ先頭

©2009-2025 Movatter.jp