Commit Graph

348 Commits

Author SHA1 Message Date
Jan Musial
d75c49aced Enable TF pair-testing parametrization
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-08-11 13:03:19 +02:00
Slawomir Jankowski
52fb80d7b4 Remove formatting NVMe from test's API
Add metadata zeroing to test's API

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-08-10 19:14:41 +02:00
Michal Mielewczyk
863947ddb8 test api: implement UsageStats arithmetic ops
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-08-10 10:30:36 -04:00
Jan Musial
ebd1c0075b Add switch for specifying buildtype in performance tests
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-08-06 14:01:30 +02:00
Jan Musial
46b8ec3c03 Performance test for 100% hit ratio
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-08-06 14:01:30 +02:00
Jan Musial
06322f6199 Add PerfContainer for storing performance results
Implement new package which primary goal is to collect and validate
performance metrics in managable way then dump them in JSON form for
further processing/storage.

Example usage:

container = PerfContainer()

container.insert_config_param("20.03.0000", ConfigParameter.CAS_VERSION)
container.insert_cache_metric(20000000, IOMetric.read_IOPS)

with open("perf.json", "w") as f:
    json.dump(container.to_serializable_dict(), f)

Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-08-06 14:01:30 +02:00
Robert Baldyga
3acc720cb0
Merge pull request #489 from robertbaldyga/tests-fix-cas-version-parsing
tests: Fix CAS version parsing
2020-08-05 21:54:59 +02:00
Robert Baldyga
11892d56a9 tests: Fix CAS version parsing
As CAS version format changed to custom one, we need to parse it
in non-default way.

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-08-05 15:19:29 +02:00
Katarzyna Lapinska
fdf095ea15 Remove partitions from disk after unmounting them
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-08-05 12:00:44 +02:00
Robert Baldyga
6ef7195950
Merge pull request #460 from katlapinka/init-tests
Add init test with different runlevels and test for management device status
2020-07-27 18:35:36 +02:00
Robert Baldyga
5baa34ab41
Merge pull request #419 from Ostrokrzew/ex_conf
Update 'example_config' after changes in TF
2020-07-27 18:35:09 +02:00
Robert Baldyga
124037cf55
Merge pull request #324 from Ostrokrzew/signal
Tests for FLUSH and FUA signals
2020-07-27 18:33:37 +02:00
Slawomir Jankowski
93ace7d520 Check for FLUSH and FUA signals sent to multilevel cache in lazy-write modes
Add test for checking for logs of requests insyslog from OpenCAS
when SCSI_DEBUG module is base-level core device in multilevel cache.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-07-21 10:28:56 +02:00
Slawomir Jankowski
c01956d0e1 Check for FLUSH and FUA signals sent to cache device in lazy-write modes
Add test for checking for logs of requests insyslog from OpenCAS
when SCSI_DEBUG module is cache device.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-07-21 10:28:56 +02:00
Slawomir Jankowski
153eb19c9b Check for FLUSH and FUA signals sent to core device in lazy-write modes
Add test for checking for logs of requests in syslog from OpenCAS
when SCSI_DEBUG module is core device.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-07-21 10:28:56 +02:00
Katarzyna Lapinska
fb8860bf39 Initialize tests cleanup
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-07-15 12:57:03 +02:00
Katarzyna Lapinska
6be612be78 Add init test with different runlevels and test for management device status
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-07-14 13:55:55 +02:00
Robert Baldyga
94dda3a7d5
Merge pull request #442 from katlapinka/stress-dirty-shutdown
Add new stress dirty shutdown test
2020-07-14 13:47:49 +02:00
Slawomir Jankowski
5bc85049a2 Update 'example_config' after changes in TF
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-07-13 12:10:38 +02:00
Robert Baldyga
cfb915867a
Merge pull request #449 from katlapinka/dev-capabilities
Add test for devices' capabilities
2020-07-12 09:28:15 +02:00
Robert Baldyga
885ca70699
Merge pull request #456 from imjfckm/fix-force-reinstall
Change force-reinstall test option to behave properly
2020-07-12 09:28:01 +02:00
Robert Baldyga
9c6a4a393c
Merge pull request #321 from Ostrokrzew/wb
Lazy-writes modes tests
2020-07-07 08:54:58 +02:00
Katarzyna Lapinska
b13403a9b9 Add test for devices' capabilities
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-07-07 08:40:07 +02:00
Jan Musial
711aa2fe47 Change force-reinstall test option to behave properly
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-07-03 11:53:31 +02:00
Katarzyna Lapinska
5aa1ca7d48 Add missing import to long DI tests 2020-06-29 14:36:02 +02:00
Michal Rakowski
4c3a07c13b tests: add cache start trim test
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2020-06-25 12:12:51 +02:00
Michal Rakowski
23aea2b7cc Test framework update & conftest fixup
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2020-06-24 14:40:15 +02:00
Katarzyna Lapinska
aeae7c9765 Add test for checking the ability of CAS to start cache instances upon system boot after dirty shutdown during IO workloads
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-06-22 16:49:49 +02:00
Katarzyna Lapinska
be288d2fac Kill existing fsck process to be able to manage partitions in test prepare
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-06-17 09:03:45 +02:00
Slawomir Jankowski
9116864b92 Update Test-framework submodule
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-15 13:51:39 +02:00
Slawomir Jankowski
b12b0e52f6 Update wb throttling test after TF changes
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-15 13:49:49 +02:00
Slawomir Jankowski
9e5385009d Test for clean remove of core without fs from cache
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-15 13:48:21 +02:00
Slawomir Jankowski
ca89bd43b5 Test for clean remove of core with fs from cache
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-15 13:48:21 +02:00
Slawomir Jankowski
d74f82f2cb Test for clean stop of cache
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-15 13:48:21 +02:00
Robert Baldyga
97f160f1c3
Merge pull request #381 from Ostrokrzew/flush_concurrent
Add test for concurrent flushing processes
2020-06-10 16:13:40 +02:00
Robert Baldyga
54eb642015
Merge pull request #388 from Ostrokrzew/help
Rebuild test for *help* command
2020-06-10 16:10:14 +02:00
Robert Baldyga
281c57fae5
Merge pull request #425 from katlapinka/recovery-tests
Add new recovery tests for cache modes with lazy writes
2020-06-09 14:55:32 +02:00
Katarzyna Lapinska
a98fe4886a Add recovery tests
Signed-off-by: Katarzyna Lapinska <katarzyna.lapinska@intel.com>
2020-06-08 12:09:26 +02:00
Slawomir Jankowski
f03a199d12 Update promotion test due to a ban on using 'load' and 'force' option simultaneously
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-08 11:38:42 +02:00
Slawomir Jankowski
5ece6efa40 Add test for 'version' command
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-08 11:15:02 +02:00
Slawomir Jankowski
207a3b7b7e Add test for concurrent cache flushing processes
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-05 12:46:51 +02:00
Slawomir Jankowski
8f6491bcc0 Add test for concurrent core flushing processes
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-05 12:46:51 +02:00
Robert Baldyga
a03a27f1d5
Merge pull request #377 from rafalste/tests_statistics_integrity
Test for proper statistics values
2020-06-02 13:22:09 +02:00
Rafal Stefanowski
04b2fc6bd5 Test for proper statistics values
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-06-02 10:25:57 +02:00
Robert Baldyga
7bd09878f9
Merge pull request #428 from robertbaldyga/tf-plugins-provided-by
Update test-framework and update example config
2020-06-01 16:37:39 +02:00
Slawomir Jankowski
0903541160 Add new error message to 'cli_mesages'
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-01 13:30:07 +02:00
Slawomir Jankowski
394313002b Add test for wrong flag combination in start command
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-01 13:30:07 +02:00
Slawomir Jankowski
4b26b05b9f Rebuild test for *help* command
Test all *help* call cases, even wrong.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-01 12:32:54 +02:00
Slawomir Jankowski
24a8619f9a Add file with *help* messages
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-06-01 12:32:54 +02:00
Robert Baldyga
16ac54af17 Update test-framework and update example config
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-06-01 12:32:36 +02:00
Robert Baldyga
69da7f5677
Merge pull request #420 from mmichal10/core-id-rule
Core id ioclass rule
2020-05-29 15:13:39 +02:00
Robert Baldyga
d11f434a76
Merge pull request #424 from mmichal10/improve-installer
Improve installer
2020-05-27 16:26:27 +02:00
Michal Mielewczyk
e34477690c test api: allow to get commit hash from DUT
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 09:18:01 -04:00
Michal Mielewczyk
c99631bc73 test api: don't copy sources in set_up_opencas()
This way set_up_opencas() can be reused in tests

Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 09:18:01 -04:00
Michal Mielewczyk
8e50f1c219 test api: allow to install particular CAS version
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 09:18:01 -04:00
Michal Mielewczyk
ce84b811b7 test api: split installer into smaller steps
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 09:18:01 -04:00
Michal Mielewczyk
3f8f033c4c test api: clean CAS repo before build
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 09:18:01 -04:00
Michal Mielewczyk
bd8b88b55d test api: wrapper for git checkout command
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 09:18:01 -04:00
Michal Mielewczyk
a9835183d8 test api: wrapper class for CAS version
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-27 05:37:38 -04:00
Michal Mielewczyk
8def35c986 test api: wrapper for retrieving CAS release tags
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-26 09:54:36 -04:00
Michal Mielewczyk
b51d75ff5e Test for core id based io classification
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-25 05:16:35 -04:00
Michal Mielewczyk
25b1fb086e test api: fix purge command wrapper name
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-25 05:11:29 -04:00
Michal Mielewczyk
c232dd36d9 Test for triggered WBT 2020-05-21 04:30:57 -04:00
Robert Baldyga
673ff88fff
Merge pull request #383 from rafalste/tests_stat_max
Tests for max cache/core stats
2020-05-20 23:00:56 +02:00
Robert Baldyga
1e25420f86
Merge pull request #404 from rafalste/copyright_update
Update copyright statements
2020-05-19 11:25:11 +02:00
Robert Baldyga
c7f3e52411
Merge pull request #309 from Deixx/ioclass-stats
IO class stats - refactor and test for statistics sections
2020-05-18 17:55:24 +02:00
Michal Mielewczyk
84f2dc3c07 CLI test for purge commands
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-12 11:32:01 -04:00
Michal Mielewczyk
c28babde8b tests: Wrappers for purge commands
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-05-12 11:32:01 -04:00
Rafal Stefanowski
58b3135082 Tests for max cache/core stats
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-05-06 11:22:07 +02:00
Rafal Stefanowski
44b4020cc1 Update copyright statements
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-05-04 16:47:38 +02:00
Daniel Madej
f9e28c9d05 Add test for IO class statistics sections
Signed-off-by: Daniel Madej <daniel.madej@intel.com>
2020-05-04 13:04:22 +02:00
Daniel Madej
8d0650ecb3 Refactor/update existing tests in test_ioclass_stats.py
Signed-off-by: Daniel Madej <daniel.madej@intel.com>
2020-04-29 11:55:08 +02:00
Daniel Madej
f31587fc9d Refactor check_msg + fixes in touched files
Signed-off-by: Daniel Madej <daniel.madej@intel.com>
2020-04-29 11:55:08 +02:00
Katarzyna Lapinska
1cf56d9d6c Tests directories cleanup 2020-04-27 15:24:01 +02:00
Jan Musial
ea448b8584 Update utils tests
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-03-31 14:14:54 +02:00
Rafal Stefanowski
d5e632d3a3 Update rsync usage to utilize bidirectional rsync
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-03-24 15:38:54 +01:00
Jan Musial
650dbf5d31 Add test for ALRU with activity threshold set to 0
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-03-11 11:27:48 +01:00
Jan Musial
8d86cdfa3b Allow whole range of ALRU parameters in test API
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-03-11 11:27:48 +01:00
Jan Musial
1b0c0f6380 Update test framework
Signed-off-by: Jan Musial <jan.musial@intel.com>
2020-03-11 11:27:48 +01:00
Michal Rakowski
dfab893c3d
Merge pull request #319 from rafalste/tests_display_stats
Add tests for proper statistics display
2020-02-18 12:47:49 +01:00
Michał Mielewczyk
6e1224191f
Merge pull request #260 from Ostrokrzew/many2one
Add FI many to one tests
2020-02-18 09:00:05 +01:00
Katarzyna Łapińska
da493b37bb
Merge pull request #331 from Ostrokrzew/load_init_odlozony
Load cache tests' update
2020-02-18 07:42:57 +01:00
Katarzyna Łapińska
49edc8a8cd
Merge pull request #315 from Ostrokrzew/interrupt
Interruption tests
2020-02-18 07:24:43 +01:00
Rafal Stefanowski
d9a2b017c8 Add tests for proper statistics display
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-02-17 17:53:09 +01:00
Slawomir Jankowski
17528aefdd Add interrupt cache stop interrupt test
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-17 15:36:31 +01:00
Slawomir Jankowski
657023a79c Add two tests for interrupting cache mode switch
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-17 15:36:31 +01:00
Slawomir Jankowski
5f21f4d580 Add interrupt removing core test
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-17 15:36:31 +01:00
Slawomir Jankowski
90c27e488c Add Interrupt cache flushing test
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-17 15:36:31 +01:00
Slawomir Jankowski
660a99ae5c Add Interrupt core flushing test
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-17 15:36:31 +01:00
Michał Mielewczyk
ee9855cad3
Merge pull request #335 from Ostrokrzew/multi
Remove core from multilevel cache test
2020-02-17 15:22:57 +01:00
Michal Mielewczyk
b28e2614c0 Test for acp wake up time param.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-02-17 07:28:04 -05:00
Michal Mielewczyk
230667a219 Test for acp flush max buffers param.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-02-17 03:52:17 -05:00
Slawomir Jankowski
8c7f0dcd32 One of many cores in cache fails
OpenCAS continue to work after one of many cores fails
1. Start cache.
2. Add core1 to previously created cache.
3. Add core2 to previously created cache.
4. Fill cache with pages from core1.
5. Fail core1.
6. Check if core2 is able to use cache.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-17 09:44:55 +01:00
Michal Mielewczyk
b96da538e0 Expect particular types in ACP config constructor
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-02-17 03:41:57 -05:00
Michal Mielewczyk
01dcc3b0fd tests: Add __str__ method for ACP config class
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-02-17 03:41:57 -05:00
Slawomir Jankowski
4717b942d9 Dynamic allocation of space in cache
OpenCAS continues to operate after one of many cores is released:
1. "Start cache",
2. "Add core1 to previously created cache",
3. "Add core2 to previously created cache",
4. "Fill cache with pages from core1",
5. "Check if core2 is able to use cache"

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-14 14:50:29 +01:00
Slawomir Jankowski
9ad35e8ae9 Remove one of multiple cores from cache
OpenCAS continues to operate after one of many cores is removed:
1. "Start cache",
2. "Add core1 to previously created cache",
3. "Add core2 to previously created cache",
4. "Fill cache with pages from core1",
5. "Remove core1",
6. "Check if core2 is able to use cache"

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-14 14:50:29 +01:00
Michal Rakowski
25bf128c1a functional tests: fix setting seq_cutoff policy
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2020-02-14 14:48:13 +01:00
Slawomir Jankowski
8991153bd8 Remove core from multilevel cache
OpenCAS not allow remove the core on 1 level cache when is used by level 2:
/1/ "Create multilevel intelcas device",
/2/ "Try to remove intelcas device on level 1",
/3/ "Remove intelcas device"

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-13 15:54:32 +01:00
Slawomir Jankowski
7904c06423 Add message
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-02-13 15:54:32 +01:00