plectrum

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit a2afdaf36785bb1ea83c8997abb67b81d8733bb9
parent 1b527cd3f28014296ee71c460f6f45015bf2f4c1
Author: gstraube <gstraube@mailbox.org>
Date:   Fri,  2 Nov 2018 16:21:10 +0100

Fix test (issue #20)

Signed-off-by: gstraube <gstraube@mailbox.org>

Diffstat:
Mapp/build.gradle | 2++
Mapp/src/test/java/com/github/cythara/PitchComparatorTest.java | 27++++++++++++++++++++++-----
2 files changed, 24 insertions(+), 5 deletions(-)

diff --git a/app/build.gradle b/app/build.gradle @@ -44,8 +44,10 @@ dependencies { implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.jaredrummler:material-spinner:1.2.5' implementation 'com.shawnlin:number-picker:2.4.6' + implementation group: 'org.powermock', name: 'powermock-api-mockito2', version: '1.7.4' testImplementation 'junit:junit:4.12' testImplementation group: 'org.hamcrest', name: 'hamcrest-all', version: '1.3' testImplementation group: 'org.robolectric', name: 'robolectric', version: '3.8' //4.0-alpha-3 + testImplementation group: 'org.powermock', name: 'powermock-module-junit4', version: '1.7.4' } diff --git a/app/src/test/java/com/github/cythara/PitchComparatorTest.java b/app/src/test/java/com/github/cythara/PitchComparatorTest.java @@ -1,19 +1,35 @@ package com.github.cythara; -import org.junit.Assert; +import com.github.cythara.tuning.GuitarTuning; + import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; import java.util.HashMap; import java.util.Map; -import static com.github.cythara.tuning.GuitarTuning.Pitch.*; +import static com.github.cythara.tuning.GuitarTuning.Pitch.D3; +import static com.github.cythara.tuning.GuitarTuning.Pitch.E2; +import static com.github.cythara.tuning.GuitarTuning.Pitch.E4; +import static com.github.cythara.tuning.GuitarTuning.Pitch.G3; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.Matchers.closeTo; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThat; +@RunWith(PowerMockRunner.class) +@PrepareForTest(MainActivity.class) public class PitchComparatorTest { @Test - public void retrieveNote() throws Exception { + public void retrieveNote() { + PowerMockito.mockStatic(MainActivity.class); + Mockito.when(MainActivity.getCurrentTuning()).thenReturn(new GuitarTuning()); + Map<Float, PitchDifference> expectations = new HashMap<>(); expectations.put(20f, new PitchDifference(E2, -2451.3202694972874)); expectations.put(500f, new PitchDifference(E4, 721.3071582323822)); @@ -24,8 +40,9 @@ public class PitchComparatorTest { PitchDifference actual = PitchComparator.retrieveNote(pitch); PitchDifference expected = expectations.get(pitch); - Assert.assertThat(actual.closest, is(expected.closest)); - Assert.assertThat(actual.deviation, closeTo(expected.deviation, 0.001)); + assertNotNull(expected); + assertThat(actual.closest, is(expected.closest)); + assertThat(actual.deviation, closeTo(expected.deviation, 0.001)); } } }