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

Create interface and implementation for monophonic patterns #5

Closed
otsob opened this issue Sep 21, 2018 · 0 comments
Closed

Create interface and implementation for monophonic patterns #5

otsob opened this issue Sep 21, 2018 · 0 comments
Assignees

Comments

@otsob
Copy link
Owner

otsob commented Sep 21, 2018

In order to handle monophonic musical patterns (motifs, segments of melodies, melodies etc.)
as a user
I want there to be an interface and implementation for handling polyphonic musical patterns

Acceptance criteria:

  • The monophonic pattern should provide at least basic equality comparisons:
    • equals
    • equals in pitch
    • equals in durations
    • is tranpositionally equivalent
  • The pattern implementation is immutable
  • There are unit tests for the pattern implementation
  • There is a builder class for creating patterns
@otsob otsob changed the title Create interface and implementation for handling monophonic patterns Create interface and implementation for monophonic patterns Sep 21, 2018
@otsob otsob self-assigned this Oct 16, 2018
@otsob otsob removed their assignment Nov 17, 2018
@otsob otsob self-assigned this May 29, 2019
otsob added a commit that referenced this issue May 29, 2019
otsob added a commit that referenced this issue May 29, 2019
otsob added a commit that referenced this issue May 29, 2019
Use the default Object.equals instead.
otsob added a commit that referenced this issue May 29, 2019
Enable the equals test and rename it.
Add default hashCode also.
otsob added a commit that referenced this issue May 29, 2019
otsob added a commit that referenced this issue Jun 1, 2019
otsob added a commit that referenced this issue Jun 1, 2019
Patterns should be handled through the common interface
whether they are monophonic or polyphonic.
otsob added a commit that referenced this issue Jun 1, 2019
Ensure that tested instances are always of expected type, but
test them through the interface instead of implementation class.
otsob added a commit that referenced this issue Jun 1, 2019
This method is not needed for now.
otsob added a commit that referenced this issue Jun 1, 2019
otsob added a commit that referenced this issue Jun 1, 2019
Patterns should be handled through the common interface
whether they are monophonic or polyphonic.
otsob added a commit that referenced this issue Jun 1, 2019
Ensure that tested instances are always of expected type, but
test them through the interface instead of implementation class.
otsob added a commit that referenced this issue Jun 1, 2019
This method is not needed for now.
otsob added a commit that referenced this issue Jun 1, 2019
The name equalsInRhythm was too ambiguous.
otsob added a commit that referenced this issue Jun 1, 2019
Patterns should be handled through the common interface
whether they are monophonic or polyphonic.
otsob added a commit that referenced this issue Jun 1, 2019
Ensure that tested instances are always of expected type, but
test them through the interface instead of implementation class.
otsob added a commit that referenced this issue Jun 1, 2019
This method is not needed for now.
otsob added a commit that referenced this issue Jun 1, 2019
The name equalsInRhythm was too ambiguous.
otsob added a commit that referenced this issue Jun 2, 2019
Issue #5: Implement monophonic pattern handling

Adds an implementation with tests for checking if monophonic patterns are equal in:
* pitch
* durations
* enharmonically in pitch
* transpositionally in pitch
otsob added a commit that referenced this issue Jun 4, 2019
Issue #5: Add pattern builder

Implement pattern builder that can be used for building monophonic patterns.
@otsob otsob closed this as completed Jun 4, 2019
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

No branches or pull requests

1 participant