Changeset 2940 for inundation/geospatial_data/test_geospatial_data.py
- Timestamp:
- May 22, 2006, 2:36:04 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
inundation/geospatial_data/test_geospatial_data.py
r2928 r2940 52 52 attributes = [2, 4] 53 53 G = Geospatial_data(points, attributes, 54 geo_reference =Geo_reference(56, 100, 200))54 geo_reference=Geo_reference(56, 100, 200)) 55 55 56 56 assert G.geo_reference.zone == 56 … … 64 64 attributes = [2, 4] 65 65 G = Geospatial_data(points, attributes, 66 geo_reference =Geo_reference(56, 100, 200))67 68 69 P = G.get_data_points(absolute =False)66 geo_reference=Geo_reference(56, 100, 200)) 67 68 69 P = G.get_data_points(absolute=False) 70 70 assert allclose(P, [[1.0, 2.1], [3.0, 5.3]]) 71 71 72 P = G.get_data_points(absolute =True)72 P = G.get_data_points(absolute=True) 73 73 assert allclose(P, [[101.0, 202.1], [103.0, 205.3]]) 74 74 … … 87 87 attributes = {'a0': [0, 0], 'a1': [2, 4], 'a2': [79.4, -7]} 88 88 G = Geospatial_data(points, attributes, 89 geo_reference =Geo_reference(56, 100, 200),90 default_attribute_name ='a1')91 92 93 P = G.get_data_points(absolute =False)89 geo_reference=Geo_reference(56, 100, 200), 90 default_attribute_name='a1') 91 92 93 P = G.get_data_points(absolute=False) 94 94 assert allclose(P, [[1.0, 2.1], [3.0, 5.3]]) 95 95 … … 122 122 attributes = {'a0': [0, 0], 'a1': [2, 4], 'a2': [79.4, -7]} 123 123 G = Geospatial_data(points, attributes, 124 geo_reference =Geo_reference(56, 100, 200),125 default_attribute_name ='a1')124 geo_reference=Geo_reference(56, 100, 200), 125 default_attribute_name='a1') 126 126 127 127 … … 165 165 G = points_dictionary2geospatial_data(points_dict) 166 166 167 P = G.get_data_points(absolute =False)167 P = G.get_data_points(absolute=False) 168 168 assert allclose(P, [[1.0, 2.1], [3.0, 5.3]]) 169 169 … … 342 342 G1 = Geospatial_data(points, att_dict, geo_ref) 343 343 344 G1.export_points_file(FN, absolute =True)344 G1.export_points_file(FN, absolute=True) 345 345 346 346 #Create object from file 347 347 G = Geospatial_data(file_name = FN) 348 348 349 assert allclose(G.get_data_points(absolute =True),350 G1.get_data_points(absolute =True))349 assert allclose(G.get_data_points(absolute=True), 350 G1.get_data_points(absolute=True)) 351 351 assert allclose(G.get_attributes('att1'), attributes) 352 352 assert allclose(G.get_attributes('att2'), array(attributes) + 1) … … 365 365 1.0, 0.0, 10.4, 40.0\n") 366 366 file.close() 367 results = Geospatial_data(fileName, delimiter =',')367 results = Geospatial_data(fileName, delimiter=',') 368 368 os.remove(fileName) 369 369 # print 'data', results.get_data_points() 370 370 assert allclose(results.get_data_points(), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 371 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.0, 0.0, 10.4])372 assert allclose(results.get_attributes(attribute_name ='speed'), [0.0, 10.0, 40.0])371 assert allclose(results.get_attributes(attribute_name='elevation'), [10.0, 0.0, 10.4]) 372 assert allclose(results.get_attributes(attribute_name='speed'), [0.0, 10.0, 40.0]) 373 373 374 374 def test_loadxya2(self): … … 386 386 file.close() 387 387 388 results = Geospatial_data(fileName, delimiter =' ')388 results = Geospatial_data(fileName, delimiter=' ') 389 389 390 390 os.remove(fileName) 391 391 392 392 assert allclose(results.get_data_points(), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 393 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.0, 0.0, 10.4])394 assert allclose(results.get_attributes(attribute_name ='speed'), [0.0, 10.0, 40.0])393 assert allclose(results.get_attributes(attribute_name='elevation'), [10.0, 0.0, 10.4]) 394 assert allclose(results.get_attributes(attribute_name='speed'), [0.0, 10.0, 40.0]) 395 395 396 396 def test_loadxya3(self): … … 412 412 file.close() 413 413 414 results = Geospatial_data(fileName, delimiter =' ')415 416 os.remove(fileName) 417 assert allclose(results.get_data_points(absolute =False), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]])418 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.0, 0.0, 10.4])419 assert allclose(results.get_attributes(attribute_name ='speed'), [0.0, 10.0, 40.0])414 results = Geospatial_data(fileName, delimiter=' ') 415 416 os.remove(fileName) 417 assert allclose(results.get_data_points(absolute=False), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 418 assert allclose(results.get_attributes(attribute_name='elevation'), [10.0, 0.0, 10.4]) 419 assert allclose(results.get_attributes(attribute_name='speed'), [0.0, 10.0, 40.0]) 420 420 421 421 def test_read_write_points_file_bad2(self): … … 424 424 att_dict['elevation'] = array([10.0, 0.0, 10.4]) 425 425 att_dict['brightness'] = array([10.0, 0.0, 10.4]) 426 geo_reference =Geo_reference(56,1.9,1.9)426 geo_reference=Geo_reference(56,1.9,1.9) 427 427 428 428 G = Geospatial_data(pointlist, att_dict, geo_reference) … … 451 451 #print fileName 452 452 try: 453 results = Geospatial_data(fileName, delimiter =' ')453 results = Geospatial_data(fileName, delimiter=' ') 454 454 except IOError: 455 455 pass … … 473 473 #print fileName 474 474 try: 475 results = Geospatial_data(fileName, delimiter =' ')475 results = Geospatial_data(fileName, delimiter=' ') 476 476 except IOError: 477 477 pass … … 495 495 file.close() 496 496 try: 497 results = Geospatial_data(fileName, delimiter =' ')497 results = Geospatial_data(fileName, delimiter=' ') 498 498 except IOError: 499 499 pass … … 505 505 def test_loadxy_bad4(self): 506 506 """ 507 specifying wrong delimiter507 specifying wrong delimiter 508 508 """ 509 509 import os 510 511 510 fileName = tempfile.mktemp(".xya") 512 511 file = open(fileName,"w") … … 515 514 0.0 1.0 0.0 10.0\n\ 516 515 1.0 0.0 10.4 40.0\n\ 517 #geocrap") 516 #geo\n\ 517 56\n\ 518 1.1\n\ 519 1.0\n") 520 518 521 file.close() 519 522 try: 520 # dict = import_points_file(fileName,delimiter = ' ') 521 # results = Geospatial_data() 522 results = Geospatial_data(fileName, delimiter = ',') 523 # results.import_points_file(fileName, delimiter = ' ') 523 results = Geospatial_data(fileName, delimiter=',') 524 524 except IOError: 525 525 pass … … 528 528 raise msg 529 529 530 # self.failUnless(0 ==1,531 # 'bad xya file did not raise error!')532 530 os.remove(fileName) 533 531 … … 548 546 file.close() 549 547 try: 550 # dict = import_points_file(fileName,delimiter =' ')548 # dict = import_points_file(fileName,delimiter=' ') 551 549 # results = Geospatial_data() 552 results = Geospatial_data(fileName, delimiter = ' ')553 # results.import_points_file(fileName, delimiter =' ')550 results = Geospatial_data(fileName, delimiter=' ', verbose=True) 551 # results.import_points_file(fileName, delimiter=' ') 554 552 except IOError: 555 553 pass … … 567 565 fileName = tempfile.mktemp(".xya") 568 566 try: 569 results = Geospatial_data(fileName, delimiter =' ')567 results = Geospatial_data(fileName, delimiter=' ') 570 568 except IOError: 571 569 pass … … 590 588 att_dict['brightness'] = array([10.0, 0.0, 10.4]) 591 589 # dict['attributelist'] = att_dict 592 geo_reference =Geo_reference(56,1.9,1.9)590 geo_reference=Geo_reference(56,1.9,1.9) 593 591 594 592 595 593 fileName = tempfile.mktemp(".xya") 596 594 G = Geospatial_data(pointlist, att_dict, geo_reference) 597 G.export_points_file(fileName )595 G.export_points_file(fileName, False) 598 596 599 597 # dict2 = import_points_file(fileName) … … 603 601 604 602 assert allclose(results.get_data_points(absolute=False),[[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 605 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.0, 0.0, 10.4])603 assert allclose(results.get_attributes(attribute_name='elevation'), [10.0, 0.0, 10.4]) 606 604 answer = [10.0, 0.0, 10.4] 607 assert allclose(results.get_attributes(attribute_name ='brightness'), answer)605 assert allclose(results.get_attributes(attribute_name='brightness'), answer) 608 606 #print "dict2['geo_reference']",dict2['geo_reference'] 609 607 self.failUnless(results.get_geo_reference() == geo_reference, … … 637 635 att_dict['elevation'] = array([10.0, 0.0, 10.4]) 638 636 att_dict['brightness'] = array([10.0, 0.0, 10.4]) 639 geo_reference =Geo_reference(56,1.9,1.9)637 geo_reference=Geo_reference(56,1.9,1.9) 640 638 641 639 … … 650 648 assert allclose(results.get_data_points(), 651 649 [[2.9, 1.9],[1.9, 2.9],[2.9, 1.9]]) 652 assert allclose(results.get_attributes(attribute_name ='elevation'),650 assert allclose(results.get_attributes(attribute_name='elevation'), 653 651 [10.0, 0.0, 10.4]) 654 652 answer = [10.0, 0.0, 10.4] 655 assert allclose(results.get_attributes(attribute_name ='brightness'), answer)653 assert allclose(results.get_attributes(attribute_name='brightness'), answer) 656 654 self.failUnless(results.get_geo_reference() == geo_reference, 657 655 'test_writepts failed. Test geo_reference') … … 676 674 677 675 assert allclose(results.get_data_points(),[[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 678 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.1, 0.0, 10.4])676 assert allclose(results.get_attributes(attribute_name='elevation'), [10.1, 0.0, 10.4]) 679 677 answer = [10.0, 1.0, 10.4] 680 assert allclose(results.get_attributes(attribute_name ='brightness'), answer)678 assert allclose(results.get_attributes(attribute_name='brightness'), answer) 681 679 682 680 def test_new_export_absolute_pts_file(self): … … 698 696 699 697 assert allclose(results.get_data_points(), G.get_data_points(True)) 700 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.1, 0.0, 10.4])698 assert allclose(results.get_attributes(attribute_name='elevation'), [10.1, 0.0, 10.4]) 701 699 answer = [10.0, 1.0, 10.4] 702 assert allclose(results.get_attributes(attribute_name ='brightness'), answer)700 assert allclose(results.get_attributes(attribute_name='brightness'), answer) 703 701 704 702 def test_loadpts(self): … … 736 734 answer = [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]] 737 735 assert allclose(results.get_data_points(), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 738 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.0, 0.0, 10.4])736 assert allclose(results.get_attributes(attribute_name='elevation'), [10.0, 0.0, 10.4]) 739 737 740 738 def test_writepts(self): … … 743 741 att_dict['elevation'] = array([10.0, 0.0, 10.4]) 744 742 att_dict['brightness'] = array([10.0, 0.0, 10.4]) 745 geo_reference =Geo_reference(56,1.9,1.9)743 geo_reference=Geo_reference(56,1.9,1.9) 746 744 747 745 fileName = tempfile.mktemp(".pts") … … 749 747 G = Geospatial_data(pointlist, att_dict, geo_reference) 750 748 751 G.export_points_file(fileName )749 G.export_points_file(fileName, False) 752 750 753 751 results = Geospatial_data(file_name = fileName) … … 837 835 xll = 0.1 838 836 yll = 20 839 geo_reference =Geo_reference(56, xll, yll)837 geo_reference=Geo_reference(56, xll, yll) 840 838 geo_reference.write_NetCDF(outfile) 841 839 … … 875 873 876 874 877 def test_add_points_files(self): 878 '''adds an xya and pts files and checks resulting file is correct 875 def test_add_(self): 876 '''adds an xya and pts files, reads the files and adds them 877 checking results are correct 879 878 ''' 880 879 … … 882 881 883 882 # create files 884 # dict1 = {}885 883 att_dict1 = {} 886 884 pointlist1 = array([[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 887 885 att_dict1['elevation'] = array([-10.0, 0.0, 10.4]) 888 886 att_dict1['brightness'] = array([10.0, 0.0, 10.4]) 889 # dict1['attributelist'] = att_dict1890 887 geo_reference1 = Geo_reference(56, 2.0, 1.0) 891 888 892 # dict2 = {}893 889 att_dict2 = {} 894 890 pointlist2 = array([[2.0, 1.0],[1.0, 2.0],[2.0, 1.0]]) 895 891 att_dict2['elevation'] = array([1.0, 15.0, 1.4]) 896 892 att_dict2['brightness'] = array([14.0, 1.0, -12.4]) 897 # dict2['attributelist'] = att_dict2898 893 geo_reference2 = Geo_reference(56, 1.0, 2.0) #FIXME (Ole): I changed this, why does it still pass 899 894 #OK - it fails now, after the fix revealed by test_create_from_pts_file_with_geo') … … 918 913 919 914 #read results 920 assert allclose(G.get_data_points(absolute = False), 921 [[2.0, 0.0],[1.0, 1.0], 922 [2.0, 0.0],[2.0, 2.0], 923 [1.0, 3.0],[2.0, 2.0]]) 924 assert allclose(G.get_attributes(attribute_name = 'elevation'), 915 # print'res', G.get_data_points() 916 # print'res1', G.get_data_points(False) 917 assert allclose(G.get_data_points(), 918 [[ 3.0, 1.0], [ 2.0, 2.0], 919 [ 3.0, 1.0], [ 3.0, 3.0], 920 [ 2.0, 4.0], [ 3.0, 3.0]]) 921 922 assert allclose(G.get_attributes(attribute_name='elevation'), 925 923 [-10.0, 0.0, 10.4, 1.0, 15.0, 1.4]) 926 924 927 925 answer = [10.0, 0.0, 10.4, 14.0, 1.0, -12.4] 928 assert allclose(G.get_attributes(attribute_name ='brightness'), answer)926 assert allclose(G.get_attributes(attribute_name='brightness'), answer) 929 927 930 928 self.failUnless(G.get_geo_reference() == geo_reference1, … … 962 960 #print "data_points",data_points 963 961 new_points = ensure_absolute(data_points, 964 geo_reference =mesh_origin)962 geo_reference=mesh_origin) 965 963 #print "new_points",new_points 966 964 #print "ab_points",ab_points … … 972 970 data_points = geo.change_points_geo_ref(ab_points) 973 971 new_points = ensure_absolute(data_points, 974 geo_reference =geo)972 geo_reference=geo) 975 973 #print "new_points",new_points 976 974 #print "ab_points",ab_points … … 985 983 #print "geo in points", points 986 984 G = Geospatial_data(points, attributes, 987 geo_reference =geo_reference)985 geo_reference=geo_reference) 988 986 989 987 new_points = ensure_absolute(G) … … 1011 1009 results = Geospatial_data(fileName) 1012 1010 1013 assert allclose(results.get_data_points(absolute =False), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]])1014 assert allclose(results.get_attributes(attribute_name ='elevation'), [10.0, 0.0, 10.4])1015 assert allclose(results.get_attributes(attribute_name ='speed'), [0.0, 10.0, 40.0])1011 assert allclose(results.get_data_points(absolute=False), [[1.0, 0.0],[0.0, 1.0],[1.0, 0.0]]) 1012 assert allclose(results.get_attributes(attribute_name='elevation'), [10.0, 0.0, 10.4]) 1013 assert allclose(results.get_attributes(attribute_name='speed'), [0.0, 10.0, 40.0]) 1016 1014 1017 1015 os.remove(fileName) … … 1020 1018 1021 1019 try: 1022 G = Geospatial_data(delimiter =',')1020 G = Geospatial_data(delimiter=',') 1023 1021 # results = Geospatial_data(file_name = fileName) 1024 1022 # dict = import_points_file(fileName) … … 1042 1040 raise msg 1043 1041 1042 def xxx_test_check_geo_reference(self): 1043 """ 1044 checks geo reference details are OK. eg can be called '#geo reference' 1045 if not throws a clear error message 1046 """ 1047 import os 1048 fileName = tempfile.mktemp(".xya") 1049 file = open(fileName,"w") 1050 file.write(" elevation \n\ 1051 1.0 0.0 10.0\n\ 1052 0.0 1.0 0.0\n\ 1053 1.0 0.0 10.4\n\ 1054 #geo reference\n\ 1055 56\n\ 1056 1.1\n\ 1057 1.0\n") 1058 1059 file.close() 1060 results = Geospatial_data(fileName) 1061 assert allclose(results.get_geo_reference().get_xllcorner(), 1.1) 1062 assert allclose(results.get_geo_reference().get_yllcorner(), 1.0) 1063 1064 def xxx_test_check_geo_reference1(self): 1065 """ 1066 checks geo reference details are OK. eg can be called '#geo reference' 1067 if not throws a clear error message 1068 """ 1069 import os 1070 fileName = tempfile.mktemp(".xya") 1071 file = open(fileName,"w") 1072 file.write(" elevation \n\ 1073 1.0 0.0 10.0\n\ 1074 0.0 1.0 0.0\n\ 1075 1.0 0.0 10.4\n\ 1076 #geo reference\n\ 1077 56\n\ 1078 1.1\n" 1079 ) 1080 file.close() 1081 1082 # try: 1083 results = Geospatial_data(fileName) 1084 # except ValueError or SyntaxError: 1085 # pass 1086 # else: 1087 # msg = 'Geo reference data format is incorrect' 1088 # raise msg 1089 1090 1091 1092 assert allclose(results.get_geo_reference().get_xllcorner(), 1.1) 1093 assert allclose(results.get_geo_reference().get_yllcorner(), 1.0) 1094 1044 1095 1045 1096
Note: See TracChangeset
for help on using the changeset viewer.