| { |
| "cells": [ |
| { |
| "cell_type": "code", |
| "execution_count": null, |
| "id": "6301516b-a3fa-48e2-a95f-0f79903a6cdd", |
| "metadata": {}, |
| "outputs": [], |
| "source": [ |
| "import unittest\n", |
| "from decimal import Decimal\n", |
| "import age \n", |
| "\n", |
| "resultHandler = age.newResultHandler()\n", |
| " \n", |
| "def evalExp(exp):\n", |
| " value = resultHandler.parse(exp) \n", |
| " print(type(value), \"|\", exp, \" --> \" ,value )\n", |
| " \n", |
| " " |
| ] |
| }, |
| { |
| "cell_type": "code", |
| "execution_count": null, |
| "id": "adf14fe9-692c-4701-86d4-8c84fd53d966", |
| "metadata": {}, |
| "outputs": [], |
| "source": [ |
| "\n", |
| "mapStr = '{\"name\": \"Smith\", \"num\":123, \"yn\":true, \"bigInt\":123456789123456789123456789123456789::numeric}' \n", |
| "arrStr = '[\"name\", \"Smith\", \"num\", 123, \"yn\", true, 123456789123456789123456789123456789.8888::numeric]' \n", |
| "strStr = '\"abcd\"' \n", |
| "intStr = '1234' \n", |
| "floatStr = '1234.56789' \n", |
| "numericStr1 = '12345678901234567890123456789123456789.789::numeric' \n", |
| "numericStr2 = '12345678901234567890123456789123456789::numeric' \n", |
| "boolStr = 'true' \n", |
| "\n", |
| "evalExp(mapStr)\n", |
| "evalExp(arrStr)\n", |
| "evalExp(strStr)\n", |
| "evalExp(intStr)\n", |
| "evalExp(floatStr)\n", |
| "evalExp(numericStr1)\n", |
| "evalExp(numericStr2)\n", |
| "evalExp(boolStr)\n", |
| "\n", |
| "evalExp('-6.45161290322581e+46') \n", |
| "evalExp('-123456789.99::numeric') \n", |
| "evalExp('-6.45161290322581e+46::numeric') \n", |
| "evalExp('1234') \n", |
| "evalExp('NaN') \n", |
| "evalExp('-Infinity') \n", |
| "evalExp('Infinity') " |
| ] |
| }, |
| { |
| "cell_type": "code", |
| "execution_count": null, |
| "id": "8881804e-d71d-4704-b74c-376ed55be808", |
| "metadata": {}, |
| "outputs": [], |
| "source": [ |
| " vertexExp = '''{\"id\": 2251799813685425, \"label\": \"Person\", \n", |
| " \"properties\": {\"name\": \"Smith\", \"numInt\":123, \"numFloat\": 384.23424, \n", |
| " \"bigInt\":123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789::numeric, \n", |
| " \"bigFloat\":123456789123456789123456789123456789.12345::numeric, \n", |
| " \"yn\":true, \"nullVal\": null}}::vertex'''\n", |
| "\n", |
| "vertex = age.parseAgeValue(vertexExp)\n", |
| "print(type(vertex.id), vertex.id)\n", |
| "print(type(vertex.label), vertex.label)\n", |
| "print(type(vertex[\"name\"]), vertex[\"name\"])\n", |
| "print(type(vertex[\"numInt\"]), vertex[\"numInt\"])\n", |
| "print(type(vertex[\"numFloat\"]), vertex[\"numFloat\"])\n", |
| "print(type(vertex[\"bigInt\"]), vertex[\"bigInt\"])\n", |
| "print(type(vertex[\"bigFloat\"]), vertex[\"bigFloat\"])\n", |
| "print(type(vertex[\"yn\"]), vertex[\"yn\"])\n", |
| "print(type(vertex[\"nullVal\"]), vertex[\"nullVal\"])" |
| ] |
| }, |
| { |
| "cell_type": "code", |
| "execution_count": null, |
| "id": "0a70e467-9587-4eb7-b97d-895223009bcc", |
| "metadata": {}, |
| "outputs": [], |
| "source": [ |
| "\n", |
| "pathExp = '''[{\"id\": 2251799813685425, \"label\": \"Person\", \"properties\": {\"name\": \"Smith\"}}::vertex, \n", |
| " {\"id\": 2533274790396576, \"label\": \"workWith\", \"end_id\": 2251799813685425, \"start_id\": 2251799813685424, \n", |
| " \"properties\": {\"weight\": 3, \"bigFloat\":123456789123456789123456789.12345::numeric}}::edge, \n", |
| " {\"id\": 2251799813685424, \"label\": \"Person\", \"properties\": {\"name\": \"Joe\"}}::vertex]::path'''\n", |
| "\n", |
| "path = age.parseAgeValue(pathExp)\n", |
| "vertexStart = path[0]\n", |
| "edge = path[1]\n", |
| "vertexEnd = path[2]\n", |
| "\n", |
| "print(type(vertexStart.id), vertexStart.id)\n", |
| "print(type(vertexStart.label), vertexStart.label)\n", |
| "print(type(vertexStart[\"name\"]), vertexStart[\"name\"])\n", |
| "\n", |
| "print(type(edge.id), edge.id)\n", |
| "print(type(edge.label), edge.label)\n", |
| "print(type(edge[\"weight\"]), edge[\"weight\"])\n", |
| "print(type(edge[\"bigFloat\"]), edge[\"bigFloat\"])\n", |
| "\n", |
| "print(type(vertexEnd.id), vertexEnd.id)\n", |
| "print(type(vertexEnd.label), vertexEnd.label)\n", |
| "print(type(vertexEnd[\"name\"]), vertexEnd[\"name\"])\n", |
| "\n" |
| ] |
| }, |
| { |
| "cell_type": "code", |
| "execution_count": null, |
| "id": "62b7273f-ac6c-4dec-af7e-0467daa140f4", |
| "metadata": {}, |
| "outputs": [], |
| "source": [] |
| } |
| ], |
| "metadata": { |
| "kernelspec": { |
| "display_name": "Python 3", |
| "language": "python", |
| "name": "python3" |
| }, |
| "language_info": { |
| "codemirror_mode": { |
| "name": "ipython", |
| "version": 3 |
| }, |
| "file_extension": ".py", |
| "mimetype": "text/x-python", |
| "name": "python", |
| "nbconvert_exporter": "python", |
| "pygments_lexer": "ipython3", |
| "version": "3.9.2" |
| } |
| }, |
| "nbformat": 4, |
| "nbformat_minor": 5 |
| } |