test: Use ut_run_test() to run driver model tests
Instead of having a separate function for running driver model tests, use the common one. Make the pre/post-run functions private since we don't need these outside of test-main.c Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
		
							parent
							
								
									99a88fe1bd
								
							
						
					
					
						commit
						ca44ca0556
					
				|  | @ -367,26 +367,6 @@ void ut_unsilence_console(struct unit_test_state *uts); | ||||||
|  */ |  */ | ||||||
| void ut_set_skip_delays(struct unit_test_state *uts, bool skip_delays); | void ut_set_skip_delays(struct unit_test_state *uts, bool skip_delays); | ||||||
| 
 | 
 | ||||||
| /**
 |  | ||||||
|  * test_pre_run() - Handle any preparation needed to run a test |  | ||||||
|  * |  | ||||||
|  * @uts: Test state |  | ||||||
|  * @test: Test to prepare for |  | ||||||
|  * @return 0 if OK, -EAGAIN to skip this test since some required feature is not |  | ||||||
|  *	available, other -ve on error (meaning that testing cannot likely |  | ||||||
|  *	continue) |  | ||||||
|  */ |  | ||||||
| int test_pre_run(struct unit_test_state *uts, struct unit_test *test); |  | ||||||
| 
 |  | ||||||
| /**
 |  | ||||||
|  * test_post_run() - Handle cleaning up after a test |  | ||||||
|  * |  | ||||||
|  * @uts: Test state |  | ||||||
|  * @test: Test to clean up after |  | ||||||
|  * @return 0 if OK, -ve on error (meaning that testing cannot likely continue) |  | ||||||
|  */ |  | ||||||
| int test_post_run(struct unit_test_state *uts, struct unit_test *test); |  | ||||||
| 
 |  | ||||||
| /**
 | /**
 | ||||||
|  * ut_run_test() - Run a single test |  * ut_run_test() - Run a single test | ||||||
|  * |  * | ||||||
|  |  | ||||||
|  | @ -25,17 +25,8 @@ struct unit_test_state global_dm_test_state; | ||||||
| static int dm_do_test(struct unit_test_state *uts, struct unit_test *test, | static int dm_do_test(struct unit_test_state *uts, struct unit_test *test, | ||||||
| 		      bool of_live) | 		      bool of_live) | ||||||
| { | { | ||||||
| 	const char *fname = strrchr(test->file, '/') + 1; |  | ||||||
| 
 |  | ||||||
| 	printf("Test: %s: %s%s\n", test->name, fname, |  | ||||||
| 	       !of_live ? " (flat tree)" : ""); |  | ||||||
| 	uts->of_live = of_live; | 	uts->of_live = of_live; | ||||||
| 
 | 	ut_assertok(ut_run_test(uts, test, test->name)); | ||||||
| 	ut_assertok(test_pre_run(uts, test)); |  | ||||||
| 
 |  | ||||||
| 	test->func(uts); |  | ||||||
| 
 |  | ||||||
| 	ut_assertok(test_post_run(uts, test)); |  | ||||||
| 
 | 
 | ||||||
| 	return 0; | 	return 0; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -80,7 +80,16 @@ static int do_autoprobe(struct unit_test_state *uts) | ||||||
| 	return ret; | 	return ret; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| int test_pre_run(struct unit_test_state *uts, struct unit_test *test) | /**
 | ||||||
|  |  * test_pre_run() - Handle any preparation needed to run a test | ||||||
|  |  * | ||||||
|  |  * @uts: Test state | ||||||
|  |  * @test: Test to prepare for | ||||||
|  |  * @return 0 if OK, -EAGAIN to skip this test since some required feature is not | ||||||
|  |  *	available, other -ve on error (meaning that testing cannot likely | ||||||
|  |  *	continue) | ||||||
|  |  */ | ||||||
|  | static int test_pre_run(struct unit_test_state *uts, struct unit_test *test) | ||||||
| { | { | ||||||
| 	if (test->flags & UT_TESTF_DM) | 	if (test->flags & UT_TESTF_DM) | ||||||
| 		ut_assertok(dm_test_pre_run(uts)); | 		ut_assertok(dm_test_pre_run(uts)); | ||||||
|  | @ -112,7 +121,14 @@ int test_pre_run(struct unit_test_state *uts, struct unit_test *test) | ||||||
| 	return 0; | 	return 0; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| int test_post_run(struct unit_test_state *uts, struct unit_test *test) | /**
 | ||||||
|  |  * test_post_run() - Handle cleaning up after a test | ||||||
|  |  * | ||||||
|  |  * @uts: Test state | ||||||
|  |  * @test: Test to clean up after | ||||||
|  |  * @return 0 if OK, -ve on error (meaning that testing cannot likely continue) | ||||||
|  |  */ | ||||||
|  | static int test_post_run(struct unit_test_state *uts, struct unit_test *test) | ||||||
| { | { | ||||||
| 	ut_unsilence_console(uts); | 	ut_unsilence_console(uts); | ||||||
| 	if (test->flags & UT_TESTF_DM) | 	if (test->flags & UT_TESTF_DM) | ||||||
|  | @ -124,9 +140,13 @@ int test_post_run(struct unit_test_state *uts, struct unit_test *test) | ||||||
| int ut_run_test(struct unit_test_state *uts, struct unit_test *test, | int ut_run_test(struct unit_test_state *uts, struct unit_test *test, | ||||||
| 		const char *test_name) | 		const char *test_name) | ||||||
| { | { | ||||||
|  | 	const char *fname = strrchr(test->file, '/') + 1; | ||||||
|  | 	const char *note = ""; | ||||||
| 	int ret; | 	int ret; | ||||||
| 
 | 
 | ||||||
| 	printf("Test: %s\n", test_name); | 	if ((test->flags & UT_TESTF_DM) && !uts->of_live) | ||||||
|  | 		note = " (flat tree)"; | ||||||
|  | 	printf("Test: %s: %s%s\n", test_name, fname, note); | ||||||
| 
 | 
 | ||||||
| 	ret = test_pre_run(uts, test); | 	ret = test_pre_run(uts, test); | ||||||
| 	if (ret == -EAGAIN) | 	if (ret == -EAGAIN) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue