<s> import os <EOL> import sys <EOL> import unittest2 as unittest <EOL> import random <EOL> import xmlrunner <EOL> import xml . dom . minidom <EOL> from shutil import rmtree <EOL> from optparse import OptionParser <EOL> import datetime <EOL> from oe_test_utils import check_tile_request , restart_apache , check_response_code , test_snap_request , file_text_replace , make_dir_tree , run_command , get_url <EOL> DEBUG = False <EOL> class TestModOnEarth ( unittest . TestCase ) : <EOL> @ classmethod <EOL> def setUpClass ( self ) : <EOL> testdata_path = os . path . join ( os . getcwd ( ) , '<STR_LIT>' ) <EOL> wmts_configs = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ) <EOL> twms_configs = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ) <EOL> self . image_files_path = os . path . join ( testdata_path , '<STR_LIT>' ) <EOL> self . test_apache_config = os . path . join ( testdata_path , '<STR_LIT>' ) <EOL> for template_dir , staging_dir , cache_config in ( wmts_configs , twms_configs ) : <EOL> template_path = os . path . join ( testdata_path , template_dir ) <EOL> staging_path = os . path . join ( testdata_path , staging_dir ) <EOL> cache_path = os . path . join ( testdata_path , cache_config ) <EOL> make_dir_tree ( staging_path ) <EOL> for file in [ f for f in os . listdir ( template_path ) if os . path . isfile ( os . path . join ( template_path , f ) ) ] : <EOL> file_text_replace ( os . path . join ( template_path , file ) , os . path . join ( staging_path , file ) , <EOL> '<STR_LIT>' , self . image_files_path ) <EOL> cmd = '<STR_LIT>' . format ( staging_path , cache_path ) <EOL> run_command ( cmd ) <EOL> rmtree ( staging_path ) <EOL> file_text_replace ( self . test_apache_config , os . path . join ( '<STR_LIT>' , os . path . basename ( self . test_apache_config ) ) , <EOL> '<STR_LIT>' , testdata_path ) <EOL> restart_apache ( ) <EOL> self . tile_hashes = { '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' } <EOL> self . snap_test_url_template = '<STR_LIT>' <EOL> def test_request_wmts_no_time_jpg ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_no_time_png ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_default_time_jpg ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_default_time_png ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_twms_notime_jpg ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_twms_notime_png ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_date_from_year_layer ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_date_from_noyear_layer ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_legacy_datetime_from_year_layer ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_wmts_year_zlevel ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_twms_year_zlevel ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_static_notime ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_twms_date_png ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_request_date_kml ( self ) : <EOL> """<STR_LIT>""" <EOL> req_url = '<STR_LIT>' <EOL> search_string = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> response = get_url ( req_url ) <EOL> try : <EOL> xml . dom . minidom . parse ( response ) <EOL> xml_check = True <EOL> except xml . parsers . expat . ExpatError : <EOL> xml_check = False <EOL> self . assertTrue ( xml_check , '<STR_LIT>' + req_url ) <EOL> check_result = all ( line for line in response if search_string in line ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_wmts_get_capabilities ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_twms_get_capabilities ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_twms_get_tile_service ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_url_parameter_case_insensitivity ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> params = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> for _ in range ( <NUM_LIT:10> ) : <EOL> test_params = [ ] <EOL> for param in params : <EOL> param_split = param . split ( '<STR_LIT:=>' ) <EOL> case = random . randint ( <NUM_LIT:0> , <NUM_LIT:1> ) <EOL> if case : <EOL> param_split [ <NUM_LIT:0> ] = param_split [ <NUM_LIT:0> ] . upper ( ) <EOL> else : <EOL> param_split [ <NUM_LIT:0> ] = param_split [ <NUM_LIT:0> ] . lower ( ) <EOL> test_params . append ( '<STR_LIT:=>' . join ( param_split ) ) <EOL> req_url = '<STR_LIT>' + '<STR_LIT:&>' . join ( test_params ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_url_parameter_reordering ( self ) : <EOL> """<STR_LIT>""" <EOL> ref_hash = '<STR_LIT>' <EOL> params = [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> for _ in range ( <NUM_LIT:20> ) : <EOL> random . shuffle ( params ) <EOL> param_string = '<STR_LIT:&>' . join ( params ) <EOL> req_url = '<STR_LIT>' + param_string <EOL> if DEBUG : <EOL> print '<STR_LIT>' + req_url <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + req_url ) <EOL> def test_wmts_error_handling ( self ) : <EOL> """<STR_LIT>""" <EOL> params = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , <EOL> '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> for i in range ( len ( params ) ) : <EOL> param_list = list ( params ) <EOL> param_list . pop ( i ) <EOL> req_url = '<STR_LIT>' + '<STR_LIT:&>' . join ( param_list ) <EOL> response_code = <NUM_LIT> <EOL> response_value = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( req_url , response_code , response_value ) <EOL> check_code = check_response_code ( req_url , response_code , response_value ) <EOL> error = '<STR_LIT>' . format ( req_url , response_code ) <EOL> self . assertTrue ( check_code , error ) <EOL> response_code = <NUM_LIT> <EOL> response_value = '<STR_LIT>' <EOL> invalid_parameter_urls = ( <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' <EOL> ) <EOL> for req_url in invalid_parameter_urls : <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( req_url , response_code , response_value ) <EOL> check_code = check_response_code ( req_url , response_code , response_value ) <EOL> error = '<STR_LIT>' . format ( req_url , response_code ) <EOL> self . assertTrue ( check_code , error ) <EOL> response_code = <NUM_LIT> <EOL> response_value = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( req_url , response_code , response_value ) <EOL> check_code = check_response_code ( req_url , response_code , response_value ) <EOL> error = '<STR_LIT>' . format ( req_url , response_code ) <EOL> self . assertTrue ( check_code , error ) <EOL> response_code = <NUM_LIT> <EOL> response_value = '<STR_LIT>' <EOL> tile_outofrange_urls = ( <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' <EOL> ) <EOL> for req_url in tile_outofrange_urls : <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( req_url , response_code , response_value ) <EOL> check_code = check_response_code ( req_url , response_code , response_value ) <EOL> error = '<STR_LIT>' . format ( req_url , response_code ) <EOL> self . assertTrue ( check_code , error ) <EOL> ref_hash = '<STR_LIT>' <EOL> empty_urls = ( <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' <EOL> ) <EOL> for url in empty_urls : <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( url ) <EOL> check_result = check_tile_request ( url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + url ) <EOL> ref_hash = '<STR_LIT>' <EOL> req_url = '<STR_LIT>' <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> check_result = check_tile_request ( req_url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + url ) <EOL> def test_REST_API ( self ) : <EOL> """<STR_LIT>""" <EOL> params = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> for ref_hash , url in params : <EOL> if DEBUG : <EOL> print '<STR_LIT>' + url <EOL> check_result = check_tile_request ( url , ref_hash ) <EOL> self . assertTrue ( check_result , '<STR_LIT>' + url ) <EOL> def test_snapping_1a ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_2a ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_3a ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_3b ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_3c ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_3d ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_4a ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_4b ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> tests = ( ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) , <EOL> ( '<STR_LIT>' , '<STR_LIT>' ) ) <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' <EOL> print '<STR_LIT>' <EOL> for request_date , expected_date in tests : <EOL> req_url = self . snap_test_url_template . format ( layer_name , request_date ) <EOL> if DEBUG : <EOL> print '<STR_LIT>' . format ( request_date , expected_date ) <EOL> print '<STR_LIT>' + req_url <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( request_date , expected_date , response_date , req_url ) <EOL> self . assertEqual ( expected_date , response_date , error ) <EOL> def test_snapping_5a ( self ) : <EOL> layer_name = '<STR_LIT>' <EOL> expected_date = datetime . date ( <NUM_LIT> , <NUM_LIT:12> , <NUM_LIT:0> <NUM_LIT:1> ) <EOL> while ( expected_date . year < <NUM_LIT> ) : <EOL> end_date = expected_date . replace ( year = expected_date . year + <NUM_LIT:1> ) + datetime . timedelta ( days = - <NUM_LIT:1> ) <EOL> req_date = expected_date <EOL> while ( req_date < end_date ) : <EOL> req_url = self . snap_test_url_template . format ( layer_name , req_date ) <EOL> response_date = test_snap_request ( self . tile_hashes , req_url ) <EOL> error = '<STR_LIT>' . format ( req_date . isoformat ( ) , expected_date . isoformat ( ) , response_date , req_url ) <EOL> self . assertEqual ( expected_date . isoformat ( ) , response_date , error ) <EOL> req_date += datetime . timedelta ( days = + <NUM_LIT:1> ) <EOL> expected_date = expected_date . replace ( expected_date . year + <NUM_LIT:1> ) <EOL> @ classmethod <EOL> def tearDownClass ( self ) : <EOL> os . remove ( os . path . join ( '<STR_LIT>' + os . path . basename ( self . test_apache_config ) ) ) <EOL> restart_apache ( ) <EOL> os . remove ( os . path . join ( self . image_files_path , '<STR_LIT>' ) ) <EOL> os . remove ( os . path . join ( self . image_files_path , '<STR_LIT>' ) ) <EOL> if __name__ == '<STR_LIT:__main__>' : <EOL> parser = OptionParser ( ) <EOL> parser . add_option ( '<STR_LIT>' , '<STR_LIT>' , action = '<STR_LIT:store>' , type = '<STR_LIT:string>' , dest = '<STR_LIT>' , default = '<STR_LIT>' , <EOL> help = '<STR_LIT>' ) <EOL> parser . add_option ( '<STR_LIT>' , '<STR_LIT>' , action = '<STR_LIT:store_true>' , dest = '<STR_LIT>' , help = '<STR_LIT>' ) <EOL> parser . add_option ( '<STR_LIT>' , '<STR_LIT>' , action = '<STR_LIT:store_true>' , dest = '<STR_LIT>' , help = '<STR_LIT>' ) <EOL> ( options , args ) = parser . parse_args ( ) <EOL> if options . start_server : <EOL> TestModOnEarth . setUpClass ( ) <EOL> sys . exit ( '<STR_LIT>' ) <EOL> DEBUG = options . debug <EOL> del sys . argv [ <NUM_LIT:1> : ] <EOL> with open ( options . outfile , '<STR_LIT:wb>' ) as f : <EOL> print '<STR_LIT>' . format ( options . outfile ) <EOL> unittest . main ( <EOL> testRunner = xmlrunner . XMLTestRunner ( output = f ) <EOL> ) </s>
