Added docker based integration testing

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
This commit is contained in:
Andrew DeMaria
2018-09-30 22:53:12 -06:00
parent 685f4fa7e5
commit 004b8bba37
20 changed files with 781 additions and 4 deletions
@@ -0,0 +1,12 @@
airsonic.docker.port=4040
airsonic.ready.max_wait=80000
airsonic.ready.sleep_time=5000
# Use for dynamically generating a container as needed
spring.profiles.active=dynamic
airsonic.docker.image=airsonic/airsonic:${project.version}
# Use for testing against an existing/running container
#airsonic.docker.container=1212be8a94e0
#spring.profiles.active=existing
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<subsonic-response xmlns="http://subsonic.org/restapi" status="failed" version="1.15.0">
<error code="10" message="Required parameter is missing."/>
</subsonic-response>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<subsonic-response xmlns="http://subsonic.org/restapi" status="ok" version="1.15.0"/>
@@ -0,0 +1,5 @@
Feature: Ping API
Scenario: Airsonic responds to ping requests
When A ping request is sent
Then A required parameter response is received
@@ -0,0 +1,11 @@
Feature: Stream API for MP3
Background:
Given Media file stream/piano/piano.mp3 is added
And a scan is done
Scenario: Airsonic sends stream data
When A stream request is sent
Then The response bytes are equal
# TODO check length
@@ -0,0 +1,14 @@
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<logger level="trace" name="org.airsonic.test.cucumber_hooks.docker.DockerHook" />
<root level="info">
<appender-ref ref="STDOUT" />
</root>
</configuration>