Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package com.github.mikephil.charting.test

import com.github.mikephil.charting.data.filter.Approximator
import org.junit.Assert
import org.junit.Test

class ApproximationTest {
@Test
fun testApproximation() {
val points = floatArrayOf(10f, 20f, 20f, 30f, 25f, 25f, 30f, 28f, 31f, 31f, 33f, 33f, 40f, 40f, 44f, 40f, 48f, 23f, 50f, 20f, 55f, 20f, 60f, 25f)

Assert.assertEquals(24, points.size)

val a = Approximator()

val reduced = a.reduceWithDouglasPeucker(points, 2f)

Assert.assertEquals(18, reduced.size)
}
}

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
package com.github.mikephil.charting.test

import com.github.mikephil.charting.components.YAxis
import com.github.mikephil.charting.renderer.AxisRenderer
import com.github.mikephil.charting.renderer.YAxisRenderer
import org.junit.Assert
import org.junit.Test

class AxisRendererTest {
@Test
fun testComputeAxisValues() {
var yAxis = YAxis()
yAxis.labelCount = 6
var renderer: AxisRenderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(0f, 100f, false)
var entries = yAxis.mEntries

Assert.assertEquals(6, entries.size)
Assert.assertEquals(20.0, (entries[1] - entries[0]).toDouble(), 0.01) // interval 20
Assert.assertEquals(0.0, entries[0].toDouble(), 0.01)
Assert.assertEquals(100.0, entries[entries.size - 1].toDouble(), 0.01)

yAxis = YAxis()
yAxis.labelCount = 6
yAxis.granularity = 50f
renderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(0f, 100f, false)
entries = yAxis.mEntries

Assert.assertEquals(3, entries.size)
Assert.assertEquals(50.0, (entries[1] - entries[0]).toDouble(), 0.01) // interval 50
Assert.assertEquals(0.0, entries[0].toDouble(), 0.01)
Assert.assertEquals(100.0, entries[entries.size - 1].toDouble(), 0.01)

yAxis = YAxis()
yAxis.setLabelCount(5, true)
renderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(0f, 100f, false)
entries = yAxis.mEntries

Assert.assertEquals(5, entries.size)
Assert.assertEquals(25.0, (entries[1] - entries[0]).toDouble(), 0.01) // interval 25
Assert.assertEquals(0.0, entries[0].toDouble(), 0.01)
Assert.assertEquals(100.0, entries[entries.size - 1].toDouble(), 0.01)

yAxis = YAxis()
yAxis.setLabelCount(5, true)
renderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(0f, 0.01f, false)
entries = yAxis.mEntries

Assert.assertEquals(5, entries.size)
Assert.assertEquals(0.0025, (entries[1] - entries[0]).toDouble(), 0.0001)
Assert.assertEquals(0.0, entries[0].toDouble(), 0.0001)
Assert.assertEquals(0.01, entries[entries.size - 1].toDouble(), 0.0001)

yAxis = YAxis()
yAxis.setLabelCount(5, false)
renderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(0f, 0.01f, false)
entries = yAxis.mEntries

Assert.assertEquals(5, entries.size)
Assert.assertEquals(0.0020, (entries[1] - entries[0]).toDouble(), 0.0001)
Assert.assertEquals(0.0, entries[0].toDouble(), 0.0001)
Assert.assertEquals(0.0080, entries[entries.size - 1].toDouble(), 0.0001)

yAxis = YAxis()
yAxis.labelCount = 6
renderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(-50f, 50f, false)
entries = yAxis.mEntries

Assert.assertEquals(5, entries.size)
Assert.assertEquals(-40.0, entries[0].toDouble(), 0.0001)
Assert.assertEquals(0.0, entries[2].toDouble(), 0.0001)
Assert.assertEquals(40.0, entries[entries.size - 1].toDouble(), 0.0001)

yAxis = YAxis()
yAxis.labelCount = 6
renderer = YAxisRenderer(null, yAxis, null)

renderer.computeAxis(-50f, 100f, false)
entries = yAxis.mEntries

Assert.assertEquals(5, entries.size)
Assert.assertEquals(-30.0, entries[0].toDouble(), 0.0001)
Assert.assertEquals(30.0, entries[2].toDouble(), 0.0001)
Assert.assertEquals(90.0, entries[entries.size - 1].toDouble(), 0.0001)
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
package com.github.mikephil.charting.test

import com.github.mikephil.charting.data.BarData
import com.github.mikephil.charting.data.BarDataSet
import com.github.mikephil.charting.data.BarEntry
import org.junit.Assert
import org.junit.Test

class BarDataTest {
@Test
fun testGroupBars() {
val groupSpace = 5f
val barSpace = 1f

val values1: MutableList<BarEntry> = ArrayList()
val values2: MutableList<BarEntry> = ArrayList()

for (i in 0..4) {
values1.add(BarEntry(i.toFloat(), 50f))
values2.add(BarEntry(i.toFloat(), 60f))
}

val barDataSet1 = BarDataSet(values1, "Set1")
val barDataSet2 = BarDataSet(values2, "Set2")

val data = BarData(barDataSet1, barDataSet2)
data.barWidth = 10f

var groupWidth = data.getGroupWidth(groupSpace, barSpace)
Assert.assertEquals(27f, groupWidth, 0.01f)

Assert.assertEquals(0f, values1[0].x, 0.01f)
Assert.assertEquals(1f, values1[1].x, 0.01f)

data.groupBars(1000f, groupSpace, barSpace)

// 1000 + 2.5 + 0.5 + 5
Assert.assertEquals(1008f, values1[0].x, 0.01f)
Assert.assertEquals(1019f, values2[0].x, 0.01f)
Assert.assertEquals(1035f, values1[1].x, 0.01f)
Assert.assertEquals(1046f, values2[1].x, 0.01f)

data.groupBars(-1000f, groupSpace, barSpace)

Assert.assertEquals(-992f, values1[0].x, 0.01f)
Assert.assertEquals(-981f, values2[0].x, 0.01f)
Assert.assertEquals(-965f, values1[1].x, 0.01f)
Assert.assertEquals(-954f, values2[1].x, 0.01f)

data.barWidth = 20f
groupWidth = data.getGroupWidth(groupSpace, barSpace)
Assert.assertEquals(47f, groupWidth, 0.01f)

data.barWidth = 10f
data.groupBars(-20f, groupSpace, barSpace)

Assert.assertEquals(-12f, values1[0].x, 0.01f)
Assert.assertEquals(-1f, values2[0].x, 0.01f)
Assert.assertEquals(15f, values1[1].x, 0.01f)
Assert.assertEquals(26f, values2[1].x, 0.01f)
}
}
Loading