Return the platform of a compute

Ref https://github.com/GNS3/gns3-gui/issues/1550
This commit is contained in:
Julien Duponchelle 2016-10-04 18:48:29 +02:00
parent 2b9c190bcf
commit 4b4053dc2b
No known key found for this signature in database
GPG Key ID: CE8B29639E07F5E8
3 changed files with 12 additions and 3 deletions

View File

@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys
from gns3server.web.route import Route
from gns3server.config import Config
from gns3server.schemas.capabilities import CAPABILITIES_SCHEMA
@ -37,5 +39,6 @@ class CapabilitiesHandler:
response.json({
"version": __version__,
"platform": sys.platform,
"node_types": node_types
})

View File

@ -30,7 +30,12 @@ CAPABILITIES_SCHEMA = {
},
"node_types": {
"type": "array",
"items": NODE_TYPE_SCHEMA
"items": NODE_TYPE_SCHEMA,
"description": "Node type supported by the compute"
},
"platform": {
"type": "string",
"description": "Platform where the compute is running"
}
},
"additionalProperties": False

View File

@ -26,6 +26,7 @@ from gns3server.config import Config
from gns3server.version import __version__
@pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows")
def test_get(http_compute, windows_platform):
"""
@ -33,11 +34,11 @@ def test_get(http_compute, windows_platform):
"""
response = http_compute.get('/capabilities', example=True)
assert response.status == 200
assert response.json == {'node_types': ['cloud', 'ethernet_hub', 'ethernet_switch', 'vpcs', 'virtualbox', 'dynamips', 'frame_relay_switch', 'atm_switch', 'qemu', 'vmware', 'docker', 'iou'], 'version': __version__}
assert response.json == {'node_types': ['cloud', 'ethernet_hub', 'ethernet_switch', 'vpcs', 'virtualbox', 'dynamips', 'frame_relay_switch', 'atm_switch', 'qemu', 'vmware', 'docker', 'iou'], 'version': __version__, 'platform': sys.platform}
@pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows")
def test_get_on_gns3vm(http_compute, on_gns3vm):
response = http_compute.get('/capabilities', example=True)
assert response.status == 200
assert response.json == {'node_types': ['cloud', 'ethernet_hub', 'ethernet_switch', 'nat', 'vpcs', 'virtualbox', 'dynamips', 'frame_relay_switch', 'atm_switch', 'qemu', 'vmware', 'docker', 'iou'], 'version': __version__}
assert response.json == {'node_types': ['cloud', 'ethernet_hub', 'ethernet_switch', 'nat', 'vpcs', 'virtualbox', 'dynamips', 'frame_relay_switch', 'atm_switch', 'qemu', 'vmware', 'docker', 'iou'], 'version': __version__, 'platform': sys.platform}