| Index: cc/surfaces/surface_factory_unittest.cc
|
| diff --git a/cc/surfaces/surface_factory_unittest.cc b/cc/surfaces/surface_factory_unittest.cc
|
| index 5cb83fec5881d41ed0adfc2ea7e90d203bcd600e..ba2a8884f9b5b52dfe1ec499f345101e41858058 100644
|
| --- a/cc/surfaces/surface_factory_unittest.cc
|
| +++ b/cc/surfaces/surface_factory_unittest.cc
|
| @@ -372,5 +372,32 @@ TEST_F(SurfaceFactoryTest, DestroyWithResourceRefs) {
|
| factory_.SubmitFrame(id, frame.Pass(), base::Closure());
|
| }
|
|
|
| +TEST_F(SurfaceFactoryTest, DestroySequence) {
|
| + SurfaceId id2(5);
|
| + factory_.Create(id2, gfx::Size(5, 5));
|
| +
|
| + // Check that waiting before the sequence is satisfied works.
|
| + std::set<SurfaceSequence> sequence;
|
| + sequence.insert(SurfaceSequence(0, 4));
|
| + factory_.DestroyOnSequence(id2, sequence);
|
| +
|
| + scoped_ptr<DelegatedFrameData> frame_data(new DelegatedFrameData);
|
| + scoped_ptr<CompositorFrame> frame(new CompositorFrame);
|
| + frame->metadata.satisfies_sequences.push_back(6);
|
| + frame->metadata.satisfies_sequences.push_back(4);
|
| + frame->delegated_frame_data = frame_data.Pass();
|
| + DCHECK(manager_.GetSurfaceForId(id2));
|
| + factory_.SubmitFrame(surface_id_, frame.Pass(), base::Closure());
|
| + DCHECK(!manager_.GetSurfaceForId(id2));
|
| +
|
| + // Check that waiting after the sequence is satisfied works.
|
| + factory_.Create(id2, gfx::Size(5, 5));
|
| + sequence.clear();
|
| + sequence.insert(SurfaceSequence(0, 6));
|
| + DCHECK(manager_.GetSurfaceForId(id2));
|
| + factory_.DestroyOnSequence(id2, sequence);
|
| + DCHECK(!manager_.GetSurfaceForId(id2));
|
| +}
|
| +
|
| } // namespace
|
| } // namespace cc
|
|
|