| #!/bin/bash |
| |
| |
| # |
| # Copyright (c) 2014-2017 Nest Labs, Inc. |
| # All rights reserved. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| |
| |
| program="${builddir}/weave-device-descriptor" |
| |
| tests=( |
| '--vendor 0x235A --product 6 --revision 1 --serial-num 05CA01AC29130044 --mfg-date 2014/03/26 --802-15-4-mac 18:B4:30:00:00:1E:8E:E5 --wifi-mac 18:B4:30:27:83:47 --ssid PROTECT-8EE5 --pairing-code K4H9ET' |
| '--vendor 0x235A --product 0x13 --revision 1 --serial-num 15AA01ZZ01160101 --mfg-date 2016/08/05 --device-id 18B4300400000101' |
| ) |
| |
| expectedResults=( |
| '1V:235A$P:6$R:1$D:140326$S:05CA01AC29130044$L:18B43000001E8EE5$W:18B430278347$I:PROTECT-8EE5$C:K4H9ET$' |
| '1V:235A$P:13$R:1$D:160805$S:15AA01ZZ01160101$E:18B4300400000101$' |
| ) |
| |
| numTests=${#tests[@]} |
| |
| for ((testNum = 0; testNum < numTests; testNum++)); do |
| |
| testArgs=${tests[${testNum}]} |
| expectedResult=${expectedResults[${testNum}]} |
| |
| actualResult=`${program} encode ${testArgs}` |
| |
| if [ "${actualResult}" != "${expectedResult}" ]; then |
| >&2 echo "${0}: Encode Test ${testNum} FAILED" |
| >&2 echo " Test arguments : ${testArgs}" |
| >&2 echo " Expected result : ${expectedResult}" |
| >&2 echo " Actual result : ${actualResult}" |
| exit -1 |
| fi |
| |
| done |