@@ -35,8 +35,13 @@ def setUp(self):
3535 os .environ [PLUGIN_ENV ] = "fmf.plugins.pytest"
3636 self .plugin_tree = Tree (self .tempdir )
3737
38+ def tearDown (self ):
39+ enabled_plugins .cache_clear ()
40+ #rmtree(self.tempdir)
41+
3842 def test_basic (self ):
3943 item = self .plugin_tree .find ("/test_basic/test_skip" )
44+
4045 self .assertFalse (item .data .get ("enabled" ))
4146 self .assertIn ("Jan" , item .data ["author" ])
4247 self .assertIn (
@@ -63,6 +68,28 @@ def test_modify(self):
6368 self .assertIn ("tier2" , item .data ["tag" ])
6469 self .assertNotIn ("tier" , item .data )
6570
71+ def test_rewrite (self ):
72+ item = self .plugin_tree .find ("/test_rewrite/test_pass" )
73+ self .assertNotIn ("duration" , item .data )
74+ self .assertIn ("Tier1" , item .data ["tag" ])
75+ self .assertIn ("tier2" , item .data ["tag" ])
76+ self .assertEqual ("added" , item .data ["added_fmf_file" ])
77+ self .assertEqual ("Rewrite" , item .data ["summary" ])
78+
79+ def test_rewrite_modify (self ):
80+ self .test_rewrite ()
81+ item = self .plugin_tree .find ("/test_rewrite/test_pass" )
82+ with item as data :
83+ data ["tag+" ] += ["tier3" ]
84+ data ["extra_id" ] = 1234
85+
86+ self .plugin_tree = Tree (self .tempdir )
87+ item = self .plugin_tree .find ("/test_rewrite/test_pass" )
88+ self .test_rewrite ()
89+ self .assertEqual (1234 , item .data ["extra_id" ])
90+ self .assertIn ("tier3" , item .data ["tag" ])
91+
92+
6693
6794class Bash (Base ):
6895 """ Verify reading data done via plugins """
@@ -73,8 +100,24 @@ def setUp(self):
73100 os .path .join (PLUGIN_PATH , "bash.py" ))
74101 self .plugin_tree = Tree (self .tempdir )
75102
76- def test_pytest_plugin (self ):
103+ def test_read (self ):
77104 item = self .plugin_tree .find ("/runtest" )
78105 self .assertIn ("tier1" , item .data ["tag" ])
79106 self .assertIn ("./runtest.sh" , item .data ["test" ])
80107 self .assertIn ("Jan" , item .data ["author" ])
108+
109+ def test_modify (self ):
110+ self .assertNotIn ("runtest.fmf" , os .listdir (self .tempdir ))
111+ item = self .plugin_tree .find ("/runtest" )
112+ self .assertIn ("tier1" , item .data ["tag" ])
113+ self .assertIn ("./runtest.sh" , item .data ["test" ])
114+ with item as data :
115+ data ["tier" ] = 0
116+ data ["duration" ] = "10m"
117+ self .plugin_tree = Tree (self .tempdir )
118+ item = self .plugin_tree .find ("/runtest" )
119+ self .assertIn ("runtest.fmf" , os .listdir (self .tempdir ))
120+ self .assertEqual ("10m" , item .data ["duration" ])
121+ self .assertEqual (0 , item .data ["tier" ])
122+ self .assertIn ("tier1" , item .data ["tag" ])
123+ self .assertIn ("./runtest.sh" , item .data ["test" ])
0 commit comments