| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2003-08-11 12:13:14 +00:00
										 |  |  | import netrc, os, unittest, sys | 
					
						
							| 
									
										
										
										
											2008-05-20 21:35:26 +00:00
										 |  |  | from test import support | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | TEST_NETRC = """
 | 
					
						
							|  |  |  | machine foo login log1 password pass1 account acct1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | macdef macro1 | 
					
						
							|  |  |  | line1 | 
					
						
							|  |  |  | line2 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | macdef macro2 | 
					
						
							|  |  |  | line3 | 
					
						
							|  |  |  | line4 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2002-04-16 01:38:40 +00:00
										 |  |  | default login log2 password pass2 | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | """
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-20 21:35:26 +00:00
										 |  |  | temp_filename = support.TESTFN | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | class NetrcTestCase(unittest.TestCase): | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-26 04:29:23 +00:00
										 |  |  |     def setUp(self): | 
					
						
							| 
									
										
										
										
											2003-08-11 12:13:14 +00:00
										 |  |  |         mode = 'w' | 
					
						
							|  |  |  |         if sys.platform not in ['cygwin']: | 
					
						
							|  |  |  |             mode += 't' | 
					
						
							|  |  |  |         fp = open(temp_filename, mode) | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  |         fp.write(TEST_NETRC) | 
					
						
							|  |  |  |         fp.close() | 
					
						
							| 
									
										
										
										
											2002-04-16 01:38:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-26 04:29:23 +00:00
										 |  |  |     def tearDown(self): | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  |         os.unlink(temp_filename) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def test_case_1(self): | 
					
						
							| 
									
										
										
										
											2007-10-26 04:29:23 +00:00
										 |  |  |         nrc = netrc.netrc(temp_filename) | 
					
						
							|  |  |  |         self.assert_(nrc.macros == {'macro1':['line1\n', 'line2\n'], | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  |                                            'macro2':['line3\n', 'line4\n']} | 
					
						
							|  |  |  |                                            ) | 
					
						
							| 
									
										
										
										
											2007-10-26 04:29:23 +00:00
										 |  |  |         self.assert_(nrc.hosts['foo'] == ('log1', 'acct1', 'pass1')) | 
					
						
							|  |  |  |         self.assert_(nrc.hosts['default'] == ('log2', None, 'pass2')) | 
					
						
							| 
									
										
										
										
											2002-04-16 01:38:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2003-02-17 14:51:41 +00:00
										 |  |  | def test_main(): | 
					
						
							| 
									
										
										
										
											2008-05-20 21:35:26 +00:00
										 |  |  |     support.run_unittest(NetrcTestCase) | 
					
						
							| 
									
										
										
										
											2002-04-16 01:38:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2002-03-22 02:48:57 +00:00
										 |  |  | if __name__ == "__main__": | 
					
						
							| 
									
										
										
										
											2003-02-17 14:51:41 +00:00
										 |  |  |     test_main() |