getting outdated value for [@unittest.skipIf decorator] condition
I just encountered a problem with `@unittest.skipIf(expression)`. Well, the problem is that if I use variable in decorator that is declared and assigned a value before starting the test, and during the test the value of this variable is changed the effect is such that decorator includes the old value. For example:

<!-- language: lang-python -->

    class Settings(object):
        flag=False
    class TestCase(object):

        # during the test variable is changed (in this module or another)
        Settings.flag=True

        @unittest.skipIf(Settings.flag==True)
        def test_something(self):
            ...

<!-- language: lang-python -->

Value of `Settings.flag` can be changed in another module or this module (this doesn't matter). In both cases condition `Setting.flag==True` during call `test_something` still takes the 'False' value although it was already changed to 'True' value. It is very strange and I admit that I don't understand how this mechanism works. It seems that the value used in this decorator can't be changed during the test. Maybe there is some other interesting way to skip the test at the time of a particular condition, which may change during the test. Does anyone have an idea how to approach this problem?
getting outdated value for [@unittest.skipIf decorator] condition
===

I just encountered a problem with `@unittest.skipIf(expression)`. Well, the problem is that if I use variable in decorator that is declared and assigned a value before starting the test, and during the test the value of this variable is changed the effect is such that decorator includes the old value. For example:

<!-- language: lang-python -->

    class Settings(object):
        flag=False
    class TestCase(object):

        # during the test variable is changed (in this module or another)
        Settings.flag=True

        @unittest.skipIf(Settings.flag==True)
        def test_something(self):
            ...

<!-- language: lang-python -->

Value of `Settings.flag` can be changed in another module or this module (this doesn't matter). In both cases condition `Setting.flag==True` during call `test_something` still takes the 'False' value although it was already changed to 'True' value. It is very strange and I admit that I don't understand how this mechanism works. It seems that the value used in this decorator can't be changed during the test. Maybe there is some other interesting way to skip the test at the time of a particular condition, which may change during the test. Does anyone have an idea how to approach this problem?