Exemple #1
0
 def test_model(self):
     mr = MeasuredResult(speed=100.0)
     mr.put()
     results = MeasuredResult.all().fetch(100)
     self.assertEquals(len(results), 1)
     # 浮動小数点の比較はassertAlmostEqualsを使う
     self.assertAlmostEquals(results[0].speed, 100.0)
Exemple #2
0
def add(request):
    """測定結果を追加するページ(Ajax?)

    Args:
        request:
            リクエストオブジェクト

    Return:
        追加処理実行結果(JSONフォーマット)
    """
    post_data = request.args
    measured_result = MeasuredResult(post_data)
    measured_result.put()
    return Response(json.dumps({"result":"OK"}))
Exemple #3
0
def get_data(request):
    """測定結果のデータを返す

    Args:
        request:
            リクエストオブジェクト

    Return;
        測定結果データ(JSON)

    """
    response_msg = ""
    url_params = request.args

    north_bound = url_params.get('n')
    south_bound = url_params.get('s')
    east_bound  = url_params.get('e')
    west_bound  = url_params.get('w')

    query = MeasuredResult.all()
    query.filter("latitude <= ",  north_bound)
    query.filter("latitude >= ",  south_bound)
    query.filter("longitude <= ", west_bound)
    query.filter("longitude >= ", east_bound)
    resuts = query.fetch(20)

    json = json.dumps([dbutils.to_dict(result) for result in results])
    callback_func_name = url_params.get("callback")
    jsonp = "%s(%s)" % (callback_func_name, json)
    return Response(jsonp, content_type="application/json")
Exemple #4
0
 def test_filter(self):
     add_data1 = {
         "carrier":"docomo",
         "speed":100.0,
         "out_of_service":False,
         "latitude":100.0,
         "longitude":100.0,
         "address":u"福井県鯖江市",
         "comment":u"テスト1データ"
     }
     add_data2 = {
         "carrier":"docomo",
         "speed":100.0,
         "out_of_service":False,
         "latitude":200.0,
         "longitude":200.0,
         "address":u"福井県鯖江市",
         "comment":u"テスト2データ"
     }
     mr = MeasuredResult(**add_data1)
     mr.put()
     mr = MeasuredResult(**add_data2)
     mr.put()
     results = MeasuredResult.all().filter("latitude >= ", 50.0).filter("latitude <= ", 150.0).fetch(100)
     self.assertEquals(len(results), 1)
     self.assertEquals(results[0].carrier, "docomo")
     self.assertEquals(results[0].comment, u"テスト1データ")
Exemple #5
0
 def tearDown(self):
     """テスト実行の前処理"""
     db.delete(MeasuredResult.all())