32 lines
924 B
Python
32 lines
924 B
Python
import os
|
|
import pymol
|
|
from pymol import cmd, testing, stored
|
|
|
|
@testing.requires("no_run_all", "gui")
|
|
class StressShaders(testing.PyMOLTestCase):
|
|
|
|
def _setup_movie(self, rep):
|
|
cmd.load(self.datafile('1aon.pdb.gz'))
|
|
cmd.show_as(rep)
|
|
cmd.orient()
|
|
cmd.mset('1x100')
|
|
pymol.movie.roll(1, cmd.count_frames(), 0, 'y')
|
|
|
|
@testing.foreach(
|
|
(0, 0),
|
|
(0, 0, "surface"),
|
|
(1, 0),
|
|
(1, 0, "surface"),
|
|
(1, 1),
|
|
)
|
|
def test(self, use_shaders, cgo_shader_ub, rep="cartoon"):
|
|
self._setup_movie(rep)
|
|
|
|
cmd.set("use_shaders", use_shaders)
|
|
cmd.set("cgo_shader_ub_color", cgo_shader_ub)
|
|
cmd.set("cgo_shader_ub_flags", cgo_shader_ub)
|
|
cmd.set("cgo_shader_ub_normal", cgo_shader_ub)
|
|
|
|
with testing.mkdtemp() as tempdir, self.timing():
|
|
cmd.mpng(os.path.join(tempdir, "f"))
|