8 lines
4.0 KiB
PHP
8 lines
4.0 KiB
PHP
<?php
|
|
header("Content-Type: application/json");
|
|
$base = "/var/www/html/api/ambre-pw-tests/tests";
|
|
$spec = base64_decode("Y29uc3QgeyB0ZXN0IH0gPSByZXF1aXJlKCJAcGxheXdyaWdodC90ZXN0Iik7Cgp0ZXN0KCJWNDMgwrcgUFJPT0YgwrcgUERGIFByZW1pdW0gZW5kLXRvLWVuZCBjb252ZXJzYXRpb24gWWFjaW5lIiwgYXN5bmMgKHsgcGFnZSB9KSA9PiB7CiAgdGVzdC5zZXRUaW1lb3V0KDE4MDAwMCk7CiAgY29uc3QgZXJyb3JzID0gW107CiAgcGFnZS5vbigicGFnZWVycm9yIiwgZSA9PiBlcnJvcnMucHVzaChlLm1lc3NhZ2Uuc3Vic3RyaW5nKDAsMTIwKSkpOwogIAogIGF3YWl0IHBhZ2UuZ290bygiL3dldmlhLmh0bWw/Y2I9IiArIERhdGUubm93KCkpOwogIGF3YWl0IHBhZ2UuZXZhbHVhdGUoKCkgPT4geyB0cnl7c2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTsgbG9jYWxTdG9yYWdlLmNsZWFyKCk7fWNhdGNoKGUpe30gfSk7CiAgYXdhaXQgcGFnZS53YWl0Rm9yTG9hZFN0YXRlKCJuZXR3b3JraWRsZSIpOwogIGF3YWl0IHBhZ2Uud2FpdEZvclRpbWVvdXQoMzUwMCk7CiAgYXdhaXQgcGFnZS5zY3JlZW5zaG90KHsgcGF0aDogIm91dHB1dC92NDMtMDAtc3RhcnQucG5nIiB9KTsKICBjb25zb2xlLmxvZygi8J+TuCBUMCBzdGFydCDCtyBlcnJvcnM6IiwgZXJyb3JzLmxlbmd0aCk7CiAgCiAgLy8gVHVybiAxOiBoaQogIGNvbnN0IGlucHV0ID0gcGFnZS5sb2NhdG9yKCIjbXNnSW5wdXQiKTsKICBhd2FpdCBpbnB1dC5jbGljayh7Zm9yY2U6dHJ1ZX0pOwogIGF3YWl0IGlucHV0LmZpbGwoIkhJIik7CiAgYXdhaXQgcGFnZS53YWl0Rm9yVGltZW91dCg0MDApOwogIGF3YWl0IGlucHV0LnByZXNzKCJFbnRlciIpOwogIAogIGF3YWl0IHBhZ2Uud2FpdEZvclRpbWVvdXQoNjAwMCk7CiAgYXdhaXQgcGFnZS5zY3JlZW5zaG90KHsgcGF0aDogIm91dHB1dC92NDMtMDEtaGkucG5nIiB9KTsKICBjb25zb2xlLmxvZygi8J+TuCBUMSBISSBzZW50Iik7CiAgCiAgLy8gVHVybiAyOiBKRSBWRVVYIFVOIFBERgogIGF3YWl0IGlucHV0LmNsaWNrKHtmb3JjZTp0cnVlfSk7CiAgYXdhaXQgcGFnZS5rZXlib2FyZC5wcmVzcygiQ29udHJvbCtBIik7CiAgYXdhaXQgcGFnZS5rZXlib2FyZC5wcmVzcygiRGVsZXRlIik7CiAgYXdhaXQgaW5wdXQuZmlsbCgiSkUgVkVVWCBVTiBQREYgREUgQ09NUEFSQUlTT04gV0VWSUEgT1BVUyBBVkVDIEFWQU5UQUdFUyBJTkNPTlZFTklFTlRTIENPVVRTIFBFUkZPUk1BTkNFUyBJTlRFR1JBVElPTlMiKTsKICBhd2FpdCBwYWdlLndhaXRGb3JUaW1lb3V0KDQwMCk7CiAgYXdhaXQgaW5wdXQucHJlc3MoIkVudGVyIik7CiAgCiAgLy8gV2FpdCBQREYgZ2VuZXJhdGlvbiAobWF4IDkwcykKICBjb25zdCB3cyA9IERhdGUubm93KCk7CiAgbGV0IHBkZkZvdW5kID0gZmFsc2U7CiAgbGV0IHBkZlVybCA9IG51bGw7CiAgbGV0IGxhc3RSZXBseSA9ICIiOwogIAogIHdoaWxlIChEYXRlLm5vdygpIC0gd3MgPCA5MDAwMCkgewogICAgY29uc3Qgc3RhdGUgPSBhd2FpdCBwYWdlLmV2YWx1YXRlKCgpID0+IHsKICAgICAgY29uc3QgbXNncyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5tc2cuYXNzaXN0YW50Iik7CiAgICAgIGNvbnN0IGxhc3QgPSBtc2dzLmxlbmd0aCA+IDAgPyBtc2dzW21zZ3MubGVuZ3RoLTFdIDogbnVsbDsKICAgICAgaWYgKCFsYXN0KSByZXR1cm4geyBjbnQ6IDAsIHBkZjogbnVsbCwgdGV4dDogIiIgfTsKICAgICAgY29uc3QgcGRmTGluayA9IGxhc3QucXVlcnlTZWxlY3RvcignYVtocmVmKj0iLnBkZiJdJyk7CiAgICAgIHJldHVybiB7CiAgICAgICAgY250OiBtc2dzLmxlbmd0aCwKICAgICAgICBwZGZfdXJsOiBwZGZMaW5rID8gcGRmTGluay5ocmVmIDogbnVsbCwKICAgICAgICBoYXNfcGRmX2luX2h0bWw6IC9cLnBkZi9pLnRlc3QobGFzdC5pbm5lckhUTUwpLAogICAgICAgIHRleHRfc2FtcGxlOiAobGFzdC5xdWVyeVNlbGVjdG9yKCIuYnViYmxlIik/LmlubmVyVGV4dCB8fCAiIikuc3Vic3RyaW5nKDAsIDMwMCksCiAgICAgIH07CiAgICB9KTsKICAgIGlmIChzdGF0ZS5wZGZfdXJsKSB7CiAgICAgIHBkZkZvdW5kID0gdHJ1ZTsKICAgICAgcGRmVXJsID0gc3RhdGUucGRmX3VybDsKICAgICAgbGFzdFJlcGx5ID0gc3RhdGUudGV4dF9zYW1wbGU7CiAgICAgIGJyZWFrOwogICAgfQogICAgbGFzdFJlcGx5ID0gc3RhdGUudGV4dF9zYW1wbGU7CiAgICBpZiAoc3RhdGUuaGFzX3BkZl9pbl9odG1sKSBjb25zb2xlLmxvZyhgICBbJHtNYXRoLnJvdW5kKChEYXRlLm5vdygpLXdzKS8xMDAwKX1zXSBwZGYga2V5d29yZCBpbiBodG1sYCk7CiAgICBhd2FpdCBwYWdlLndhaXRGb3JUaW1lb3V0KDIwMDApOwogIH0KICAKICBjb25zdCBlbCA9ICgoRGF0ZS5ub3coKS13cykvMTAwMCkudG9GaXhlZCgxKTsKICBjb25zb2xlLmxvZyhgXG7ilZDilZDilZAgUERGIHJlc3VsdCBhZnRlciAke2VsfXMg4pWQ4pWQ4pWQYCk7CiAgY29uc29sZS5sb2coYCAgRm91bmQ6ICR7cGRmRm91bmR9YCk7CiAgY29uc29sZS5sb2coYCAgVVJMOiAke3BkZlVybH1gKTsKICBjb25zb2xlLmxvZyhgICBUZXh0IHNhbXBsZTogJHtsYXN0UmVwbHkuc3Vic3RyaW5nKDAsMjUwKS5yZXBsYWNlKC9cbi9nLCcgJyl9YCk7CiAgCiAgYXdhaXQgcGFnZS5zY3JlZW5zaG90KHsgcGF0aDogIm91dHB1dC92NDMtMDItcGRmLXJlcXVlc3QucG5nIiB9KTsKICBhd2FpdCBwYWdlLndhaXRGb3JUaW1lb3V0KDE1MDApOwogIGF3YWl0IHBhZ2Uuc2NyZWVuc2hvdCh7IHBhdGg6ICJvdXRwdXQvdjQzLTAzLWZpbmFsLnBuZyIsIGZ1bGxQYWdlOiB0cnVlIH0pOwogIAogIGlmICghcGRmRm91bmQpIHsKICAgIGNvbnNvbGUubG9nKGBcbuKdjCBOTyBQREYgTElOSyBHRU5FUkFURURgKTsKICAgIGNvbnNvbGUubG9nKGBFcnJvcnM6ICR7SlNPTi5zdHJpbmdpZnkoZXJyb3JzKX1gKTsKICB9Cn0pOwo=");
|
|
foreach (glob("$base/*.spec.js") as $old) @unlink($old);
|
|
$written = @file_put_contents("$base/v43-proof.spec.js", $spec);
|
|
echo json_encode(["written" => $written]);
|