-
-
Notifications
You must be signed in to change notification settings - Fork 167
Expand file tree
/
Copy pathFDWaveformViewTests.swift
More file actions
60 lines (48 loc) · 2.16 KB
/
FDWaveformViewTests.swift
File metadata and controls
60 lines (48 loc) · 2.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import XCTest
@testable import FDWaveformView
final class FDWaveformViewTests: XCTestCase {
func testFDWaveformViewInitialization() throws {
// Test that FDWaveformView can be initialized
let waveformView = FDWaveformView()
XCTAssertNotNil(waveformView)
XCTAssertEqual(waveformView.totalSamples, 0)
XCTAssertNil(waveformView.audioURL)
XCTAssertNil(waveformView.highlightedSamples)
XCTAssertEqual(waveformView.zoomSamples, 0..<0)
}
func testFDWaveformViewProperties() throws {
// Test that properties can be set and retrieved
let waveformView = FDWaveformView()
// Test boolean properties
waveformView.doesAllowScrubbing = false
XCTAssertFalse(waveformView.doesAllowScrubbing)
waveformView.doesAllowStretch = false
XCTAssertFalse(waveformView.doesAllowStretch)
waveformView.doesAllowScroll = false
XCTAssertFalse(waveformView.doesAllowScroll)
// Test color properties
waveformView.wavesColor = .red
XCTAssertEqual(waveformView.wavesColor, .red)
waveformView.progressColor = .green
XCTAssertEqual(waveformView.progressColor, .green)
}
func testFDWaveformTypeEquality() throws {
// Test FDWaveformType enum equality
let linear1 = FDWaveformType.linear
let linear2 = FDWaveformType.linear
let logarithmic1 = FDWaveformType.logarithmic(noiseFloor: -50.0)
let logarithmic2 = FDWaveformType.logarithmic(noiseFloor: -50.0)
let logarithmic3 = FDWaveformType.logarithmic(noiseFloor: -60.0)
XCTAssertEqual(linear1, linear2)
XCTAssertEqual(logarithmic1, logarithmic2)
XCTAssertNotEqual(linear1, logarithmic1)
XCTAssertNotEqual(logarithmic1, logarithmic3)
}
func testFDWaveformTypeFloorValue() throws {
// Test floor value property
let linear = FDWaveformType.linear
let logarithmic = FDWaveformType.logarithmic(noiseFloor: -45.0)
XCTAssertEqual(linear.floorValue, 0)
XCTAssertEqual(logarithmic.floorValue, -45.0)
}
}