videofeeds/server/tsrc/VCXScheduledReminderTest/conf/VCXScheduledReminderTest.cfg
#***********************************************************************************
#
# STIF test script file for testing scheduled reminders.
#
#***********************************************************************************
#
# *********************************************
# *************** TEST BLOCKS: ****************
# *********************************************
#
# Create
# Initialize the MyVideos client
#
# Destroy
# Destroy the client, free all resources.
#
# AddSchedule
# Add a scheduled program to schedule engine.
#
# Example of AddSchedule: AddSchedule PRESET_NAME REMINDER 60 360 0 SINGLE PRESET_NAME
#
# Required fields:
# <service name> <schedule type> <starting time in seconds> <ending time in seconds> <plugin id> <plugin type> <service name again>
#
# Preset constants for different fields:
# schedule types: REMINDER
# RECORDING
# GUIDEUPDATE
# DOWNLOAD
# OTHER
#
# plugin types: SINGLE
# MULTI
#
# GetSchedulesByAppUid
# Gets schedules by given app uid
# Required fields: <app uid>
#
# GetOverlappingSchedules
# Gets overlapping schedules by given schedule type and timespan
# Required fields: <schedule type> <starting time in days> <ending time in days>
#
# GetSchedulesByPluginUid
# Gets schedules by given plugin uid
# Required fields: <plugin id>
#
# GetSchedulesByType
# Gets schedules of given type
# Required fields: <schedule type>
#
# GetSchedulesByTime
# Gets schedules in between the given timespan
# Required fields: <starting time in days> <ending time in days>
#
# RemoveSchedule
# Removes a schedule with given database id
# Required fields: <database id>
#
# RemoveAllSchedules
# Removes all schedules from database
# No required fields
#
# RemoveAllFromArray
# Removes all schedules from database that are retrieved to the array
#
# EmptyArray
# Empties the schedule array
#
[StifSettings]
CapsModifier= IptvTestClientApiCapsMod.exe
[EndStifSettings]
[Define]
INCLUDE c:\testframework\VCXConsts.inc
INCLUDE c:\testframework\VCXScheduledReminderTest.inc
INCLUDE c:\testframework\VCXServiceNames.inc
INCLUDE c:\testframework\VCXServiceUpdating.inc
INCLUDE c:\testframework\VCXServiceManagementApiTest.inc
INCLUDE c:\testframework\VCXErrors.inc
[Enddefine]
#************************************************************************************
#------------------------------------------------------------------------------------
#
# Set up preconditions for scheduled reminder tests
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20300 <not a test> SetUp
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
delete schedtest
create VCXServiceManagementApiTest servman
servman Create
servman DeleteAllServices SYNC
servman AddHardCodedService ASYNC SERVICE_3 3G_AP 1
servman UpdateServiceField ASYNC SERVICE_3 EAddress "http:\/\/193.65.182.78/misc/smallvideos/smallvideos.xml"
servman UpdateServiceField ASYNC SERVICE_3 EName SERVICE_SMALLVIDEOS
servman Destroy
delete servman
[Endtest]
#------------------------------------------------------------------------------------
#
# Test if the scheduling engine adds given reminder
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20301 Add a schedule, check
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
schedtest AddSchedule REMINDER 5 10 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 500
schedtest GetSchedulesByAppUid
schedtest CheckCount 1
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test removing all the schedules.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20302 Delete all, check
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 500
schedtest GetSchedulesByAppUid
pause 500
schedtest CheckCount 0
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test scheduled download functionality.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20303 Get, Add, Get
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
schedtest GetSchedulesByTime 5 5
schedtest CheckCount 0
schedtest AddSchedule REMINDER 30 60 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 500
schedtest GetSchedulesByAppUid
schedtest CheckCount 1
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test if addschedule works when timespan is +-KMaxInt
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20304 Add w. maxint
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
schedtest AddSchedule REMINDER MAXINT MAXINT SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest GetSchedulesByAppUid
schedtest CheckCount 1
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test if multiple instants of VCXScheduledReminderTest work.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20305 Multi create
pause 5000
create VCXScheduledReminderTest schedtest1
create VCXScheduledReminderTest schedtest2
create VCXScheduledReminderTest schedtest3
schedtest1 Create
pause 500
schedtest2 Create
pause 500
schedtest3 Create
allowerrorcodes KERRNOTFOUND
schedtest1 RemoveAllSchedules
pause 2000
schedtest1 GetSchedulesByAppUid
schedtest1 CheckCount 0
schedtest1 AddSchedule REMINDER 5 10 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
allownextresult KERRGENERAL
allownextresult KERRNONE
schedtest1 GetSchedulesByAppUid
delete schedtest1
delete schedtest2
delete schedtest3
[Endtest]
#------------------------------------------------------------------------------------
#
# Test how multiple schedules with a small timespan work.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20306 Delete, loop create w. small timespans
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 500
loop 20
schedtest AddSchedule REMINDER 2 4 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 1000
endloop
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Delete every scheduled item from database.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20307 Delete all
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test if GetOverLappingSchedules work properly.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20308 Add overlapping, get
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
schedtest AddSchedule REMINDER 20 120 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule REMINDER 30 130 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule REMINDER 40 140 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule REMINDER 50 150 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule REMINDER 60 160 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest GetOverlappingSchedules REMINDER 5 5
schedtest CheckCount 5
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test GetSchedulesByTime with integer maximum value.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20309 GetByTime 2y timespan
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
schedtest AddSchedule REMINDER 600 6000 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest GetSchedulesByTime 365 365
schedtest CheckCount 1
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test GetSchedulesByType.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20310 Get by type
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 500
schedtest AddSchedule REMINDER 100 600 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule REMINDER 200 700 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule REMINDER 300 800 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule DOWNLOAD 400 900 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
schedtest AddSchedule DOWNLOAD 500 1000 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 500
schedtest GetSchedulesByType REMINDER
schedtest CheckCount 3
pause 500
schedtest EmptyArray
schedtest GetSchedulesByType DOWNLOAD
schedtest CheckCount 2
schedtest RemoveAllFromArray
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test reminder with negative start time.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20311 Reminder starts in past time
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 500
schedtest AddSchedule REMINDER -10 10 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 2000
schedtest GetSchedulesByAppUid
schedtest CheckCount 0
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test GetSchedulesByType.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20312 Reminder totally in past time
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 500
schedtest AddSchedule REMINDER -10 -5 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 2000
schedtest GetSchedulesByAppUid
schedtest CheckCount 0
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test GetSchedulesByType.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20313 Delete all, try to delete by loopindex
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 500
loop 10
allownextresult KERRNOTFOUND
schedtest RemoveSchedule LOOP_COUNTER
endloop
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test adding a schedule with invalid plugin uid.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20314 Add schedule w/ invalid plugin uid
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
schedtest AddSchedule REMINDER 10 20 INVALID_PLUGIN SINGLE SERVICE_SMALLVIDEOS
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test addschedule with a very large timespan.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20315 Add schedule with big timespan
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
schedtest AddSchedule REMINDER 1000000000 1100000000 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 500
schedtest GetSchedulesByAppUid
schedtest CheckCount 1
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test adding a schedule with invalid plugin uid.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20316 Add schedule with 0 end
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
schedtest AddSchedule REMINDER 10 0 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
pause 15000
schedtest GetSchedulesByAppUid
schedtest CheckCount 0
delete schedtest
[Endtest]
#------------------------------------------------------------------------------------
#
# Test schedule engine by adding a large amount of reminders in a loop.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20317 Delete, Loop create, check
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
schedtest SetTimeout 30
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 200
schedtest CheckCount 0
delete schedtest
pause 500
loop 50
create VCXScheduledReminderTest schedtest
schedtest Create
print LOOP_COUNTER
pause 200
schedtest GetSchedulesByAppUid
pause 200
schedtest CheckCount LOOP_COUNTER
pause 200
schedtest AddSchedule REMINDER 10000 11000 SCHEDULER_IMPL SINGLE SERVICE_SMALLVIDEOS
delete schedtest
endloop
[Endtest]
#------------------------------------------------------------------------------------
#
# Cleanup after tests.
#
# CaseClass: core
#------------------------------------------------------------------------------------
[Test]
title ET20318 <not a test> Cleanup schedules
pause 5000
create VCXScheduledReminderTest schedtest
schedtest Create
schedtest SetTimeout 30
allowerrorcodes KERRNOTFOUND
schedtest RemoveAllSchedules
pause 200
schedtest CheckCount 0
delete schedtest
[Endtest]