From 1be893f5b1a80a7b801cb0082dcfc74237b74ef5 Mon Sep 17 00:00:00 2001 From: Pavel Macenauer Date: Thu, 22 Oct 2020 08:07:59 +0000 Subject: [PATCH] Move PyArmNN unit test resources for IDeserializer to external storage Change-Id: I582acd5a852143b17ca19aebaf54ccf5c7b5df87 Signed-off-by: Pavel Macenauer --- python/pyarmnn/scripts/download_test_resources.py | 2 +- python/pyarmnn/scripts/requirements.txt | 1 - .../testdata/shared/deserializer/golden_output_lite.npy | Bin 138 -> 0 bytes .../test/testdata/shared/deserializer/input_lite.npy | Bin 912 -> 0 bytes python/pyarmnn/test/testdata/shared/mock_model.armnn | Bin 37140 -> 0 bytes 5 files changed, 1 insertion(+), 2 deletions(-) delete mode 100644 python/pyarmnn/test/testdata/shared/deserializer/golden_output_lite.npy delete mode 100644 python/pyarmnn/test/testdata/shared/deserializer/input_lite.npy delete mode 100644 python/pyarmnn/test/testdata/shared/mock_model.armnn diff --git a/python/pyarmnn/scripts/download_test_resources.py b/python/pyarmnn/scripts/download_test_resources.py index 63fe1e9..b2c58b0 100755 --- a/python/pyarmnn/scripts/download_test_resources.py +++ b/python/pyarmnn/scripts/download_test_resources.py @@ -14,7 +14,7 @@ import uuid SCRIPTS_DIR = os.path.dirname(os.path.realpath(__file__)) EXTRACT_DIR = os.path.join(SCRIPTS_DIR, "..", "test") -ARCHIVE_URL = "https://snapshots.linaro.org/components/pyarmnn-tests/pyarmnn_testdata_200500_20200415.tar.bz2" +ARCHIVE_URL = "https://snapshots.linaro.org/components/pyarmnn-tests/pyarmnn_testdata_201100_20201022.tar.bz2" def download_resources(url, save_path): diff --git a/python/pyarmnn/scripts/requirements.txt b/python/pyarmnn/scripts/requirements.txt index 6f6296c..59477a0 100644 --- a/python/pyarmnn/scripts/requirements.txt +++ b/python/pyarmnn/scripts/requirements.txt @@ -1,3 +1,2 @@ requests==2.23.0 pdoc3==0.6.3 -pyarmnn>=19.8.0 diff --git a/python/pyarmnn/test/testdata/shared/deserializer/golden_output_lite.npy b/python/pyarmnn/test/testdata/shared/deserializer/golden_output_lite.npy deleted file mode 100644 index 099f7fed22d71cb0031c48a99b9ba8ef1edcdaa4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1JQ);NLqoAIaUsO_*m=~X4l#&V(cT3DEP6dh= iXCxM+0{I$-ItqpcnmP)#3giMVme3qo4gm%xRt5l;h#bZM diff --git a/python/pyarmnn/test/testdata/shared/deserializer/input_lite.npy b/python/pyarmnn/test/testdata/shared/deserializer/input_lite.npy deleted file mode 100644 index 53174683ff227b5f90f3355d597cacb1b3305c37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 912 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1JQ);NLqoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$-ItoS>5NxQaqfo0rGT?e)zvbYD#Q|^1I9P8STpGT6PJ;S@=ZBB4W;~Pn zSDtIfVur`d4sYIk($PCo#^3U1wosRw%-!z_#;szDl$3sSnmmc!`E~cAr0GD>jKQ?^}pqX@c0+*-Jhv@E5sw zA22`r<79Z9BLBva4ZBNtS2oMsWbyQyUpS$&YV$<#Z7Fw){a(~A4%~BYW#K`_X<_ru zpYmMWS1oP0_1N5n`djb*`{{d5D3Vp>jm+*%Y)2i}F6tL!=)C=EKI_u+72hRIBHSje zP+=E)7hS~?u>GXMLAUjHmVMtAW&F1LRfJsrVqK=}4x{}#(VaUh_&*(cx@395CjMs^ zl49>I*|mP<$HNWRgQp8#Rd~RyQT4La^WqHedpj3v-3YvQQbqTf##LY6W7FLG=Gc6V zSz3{@{X$vV1KFNMwG2Ne-H4iPmQ~7Y(4qMAwe4(Sm#wc$O@f8izbf(-H%YHK<#KIe z(>>97Rm!ub6}P!g-W^dBu=Q_GlyZH>wity9o#L7I_g5?0Jy1y4m7lt?>hgs|x8Bs% zX0ENdlM2jCS&oRWW0&b`ocq1+Z{55LUy~ecijHMY*L7ArbS{|dnu5{u8%B3U?%G8w zMfBOue(s;7ZE|nZt`_m#xAeCKq@JFbop9xj)dO?JBeTM;a3#L@?yJ4mTJA|=lF^k7 zui`eRMyFaZ-52}5PeJ|L`X?42(ymxJE`EG<&SN3}pnvc8$X%_pf3bO!XxF;d4PW-V zX2?}UT-=fnmLbR&R{ufiW8yWBx&Q9E{LU_pU2!BdENyN|rpJ>>Q<_B`bq{N-XE3d4 zzw?qsH=_QQ?5&bo*E7YTCeAZA*6euL@O1LT2lskc+53N(n^Xs?IGLCc3cFfE1*`ZZ1(MwWVMB4f{ Xr#jp0W0%9_jN7Cgc8AKf#Owk9!GWjy diff --git a/python/pyarmnn/test/testdata/shared/mock_model.armnn b/python/pyarmnn/test/testdata/shared/mock_model.armnn deleted file mode 100644 index 964550bc1f29ca76f94cdcc900376b3868eeb633..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37140 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 -- 2.7.4