Update tests for lib

This commit is contained in:
Ivan Kravets
2016-11-27 00:05:26 +02:00
parent a3e1856f6d
commit 2ac00fb4b1
2 changed files with 46 additions and 33 deletions

View File

@ -38,13 +38,15 @@ def test_global_install_registry(clirunner, validate_cliresult,
isolated_pio_home): isolated_pio_home):
result = clirunner.invoke(cmd_lib, [ result = clirunner.invoke(cmd_lib, [
"-g", "install", "58", "OneWire", "-g", "install", "58", "OneWire",
"http://dl.platformio.org/libraries/archives/3/3756.tar.gz", "http://dl.platformio.org/libraries/archives/3/5174.tar.gz",
"ArduinoJson@5.4.0", "ArduinoJson@>5.4" "ArduinoJson@5.6.7", "ArduinoJson@>5.6"
]) ])
validate_cliresult(result) validate_cliresult(result)
items1 = [d.basename for d in isolated_pio_home.join("lib").listdir()] items1 = [d.basename for d in isolated_pio_home.join("lib").listdir()]
items2 = ["DHT22_ID58", "ArduinoJson_ID64", "Json_ID64", "OneWire_ID1", items2 = [
"ESPAsyncTCP_ID305"] "DHT22_ID58", "ArduinoJson_ID64", "ArduinoJson_ID64@5.6.7",
"OneWire_ID1", "ESPAsyncTCP_ID305"
]
assert set(items1) == set(items2) assert set(items1) == set(items2)
@ -65,12 +67,14 @@ def test_global_install_repository(clirunner, validate_cliresult,
isolated_pio_home): isolated_pio_home):
result = clirunner.invoke( result = clirunner.invoke(
cmd_lib, cmd_lib,
["-g", [
"install", "-g",
"https://github.com/gioblu/PJON.git#3.0", "install",
"https://gitlab.com/ivankravets/rs485-nodeproto.git", "https://github.com/gioblu/PJON.git#3.0",
# "https://developer.mbed.org/users/simon/code/TextLCD/", "https://gitlab.com/ivankravets/rs485-nodeproto.git",
"knolleary/pubsubclient"]) # "https://developer.mbed.org/users/simon/code/TextLCD/",
"knolleary/pubsubclient"
])
validate_cliresult(result) validate_cliresult(result)
items1 = [d.basename for d in isolated_pio_home.join("lib").listdir()] items1 = [d.basename for d in isolated_pio_home.join("lib").listdir()]
items2 = ["PJON", "ESPAsyncTCP", "PubSubClient"] items2 = ["PJON", "ESPAsyncTCP", "PubSubClient"]
@ -83,27 +87,31 @@ def test_global_lib_list(clirunner, validate_cliresult, isolated_pio_home):
assert all([n in result.output for n in ("OneWire", "DHT22", "64")]) assert all([n in result.output for n in ("OneWire", "DHT22", "64")])
result = clirunner.invoke(cmd_lib, ["-g", "list", "--json-output"]) result = clirunner.invoke(cmd_lib, ["-g", "list", "--json-output"])
assert all( assert all([
[n in result.output n in result.output
for n in ("PJON", "git+https://github.com/knolleary/pubsubclient")]) for n in ("PJON", "git+https://github.com/knolleary/pubsubclient")
])
items1 = [i['name'] for i in json.loads(result.output)] items1 = [i['name'] for i in json.loads(result.output)]
items2 = ["OneWire", "DHT22", "PJON", "ESPAsyncTCP", "Json", "ArduinoJson", items2 = [
"pubsubclient", "rs485-nodeproto", "Adafruit ST7735 Library", "OneWire", "DHT22", "PJON", "ESPAsyncTCP", "ArduinoJson",
"RadioHead"] "pubsubclient", "rs485-nodeproto", "Adafruit ST7735 Library",
"RadioHead"
]
assert set(items1) == set(items2) assert set(items1) == set(items2)
def test_global_lib_show(clirunner, validate_cliresult, isolated_pio_home): def test_global_lib_show(clirunner, validate_cliresult, isolated_pio_home):
result = clirunner.invoke(cmd_lib, ["-g", "show", "64@5.4.0"]) result = clirunner.invoke(cmd_lib, ["-g", "show", "64@5.6.7"])
validate_cliresult(result) validate_cliresult(result)
assert all([s in result.output assert all([
for s in ("Json", "arduino", "atmelavr", "5.4.0")]) s in result.output for s in ("Json", "arduino", "atmelavr", "5.6.7")
])
result = clirunner.invoke(cmd_lib, ["-g", "show", "ArduinoJson@>5.4.0"]) result = clirunner.invoke(cmd_lib, ["-g", "show", "ArduinoJson@>5.6.7"])
validate_cliresult(result) validate_cliresult(result)
assert all( assert all(
[s in result.output for s in ("ArduinoJson", "arduino", "atmelavr")]) [s in result.output for s in ("ArduinoJson", "arduino", "atmelavr")])
assert "5.4.0" not in result.output assert "5.6.7" not in result.output
result = clirunner.invoke(cmd_lib, ["-g", "show", "1"]) result = clirunner.invoke(cmd_lib, ["-g", "show", "1"])
validate_cliresult(result) validate_cliresult(result)
@ -118,13 +126,16 @@ def test_global_lib_update(clirunner, validate_cliresult, isolated_pio_home):
def test_global_lib_uninstall(clirunner, validate_cliresult, def test_global_lib_uninstall(clirunner, validate_cliresult,
isolated_pio_home): isolated_pio_home):
result = clirunner.invoke(cmd_lib, result = clirunner.invoke(cmd_lib, [
["-g", "uninstall", "1", "ArduinoJson@!=5.4.0", "-g", "uninstall", "1", "ArduinoJson@!=5.6.7", "TextLCD",
"TextLCD", "Adafruit ST7735 Library"]) "Adafruit ST7735 Library"
])
validate_cliresult(result) validate_cliresult(result)
items1 = [d.basename for d in isolated_pio_home.join("lib").listdir()] items1 = [d.basename for d in isolated_pio_home.join("lib").listdir()]
items2 = ["DHT22_ID58", "Json_ID64", "ESPAsyncTCP_ID305", "pubsubclient", items2 = [
"PJON", "rs485-nodeproto", "RadioHead_ID124"] "DHT22_ID58", "ArduinoJson_ID64@5.6.7", "ESPAsyncTCP_ID305",
"pubsubclient", "PJON", "rs485-nodeproto", "RadioHead_ID124"
]
assert set(items1) == set(items2) assert set(items1) == set(items2)
@ -137,9 +148,11 @@ def test_project_lib_complex(clirunner, validate_cliresult, tmpdir):
# isntall # isntall
result = clirunner.invoke(cmd_lib, ["install", "54", "ArduinoJson"]) result = clirunner.invoke(cmd_lib, ["install", "54", "ArduinoJson"])
validate_cliresult(result) validate_cliresult(result)
items1 = [d.basename items1 = [
for d in tmpdir.join(basename(util.get_projectlibdeps_dir())) d.basename
.listdir()] for d in tmpdir.join(basename(util.get_projectlibdeps_dir()))
.listdir()
]
items2 = ["DallasTemperature_ID54", "OneWire_ID1", "ArduinoJson_ID64"] items2 = ["DallasTemperature_ID54", "OneWire_ID1", "ArduinoJson_ID64"]
assert set(items1) == set(items2) assert set(items1) == set(items2)

View File

@ -98,7 +98,7 @@ def test_check_pio_upgrade(clirunner, validate_cliresult, isolated_pio_home):
def test_check_lib_updates(clirunner, validate_cliresult, isolated_pio_home): def test_check_lib_updates(clirunner, validate_cliresult, isolated_pio_home):
# install obsolete library # install obsolete library
result = clirunner.invoke(cli_pio, result = clirunner.invoke(cli_pio,
["lib", "-g", "install", "PubSubClient@<2.6"]) ["lib", "-g", "install", "ArduinoJson@<5.7"])
validate_cliresult(result) validate_cliresult(result)
# reset check time # reset check time
@ -108,7 +108,7 @@ def test_check_lib_updates(clirunner, validate_cliresult, isolated_pio_home):
result = clirunner.invoke(cli_pio, ["lib", "-g", "list"]) result = clirunner.invoke(cli_pio, ["lib", "-g", "list"])
validate_cliresult(result) validate_cliresult(result)
assert ("There are the new updates for libraries (PubSubClient)" in assert ("There are the new updates for libraries (ArduinoJson)" in
result.output) result.output)
@ -130,9 +130,9 @@ def test_check_and_update_libraries(clirunner, validate_cliresult,
assert len(prev_data) == 1 assert len(prev_data) == 1
# initiate auto-updating # initiate auto-updating
result = clirunner.invoke(cli_pio, ["lib", "-g", "show", "PubSubClient"]) result = clirunner.invoke(cli_pio, ["lib", "-g", "show", "ArduinoJson"])
validate_cliresult(result) validate_cliresult(result)
assert ("There are the new updates for libraries (PubSubClient)" in assert ("There are the new updates for libraries (ArduinoJson)" in
result.output) result.output)
assert "Please wait while updating libraries" in result.output assert "Please wait while updating libraries" in result.output
assert "[Out-of-date]" in result.output assert "[Out-of-date]" in result.output