Flutter Engine
The Flutter Engine
impeller
core
allocator_unittests.cc
Go to the documentation of this file.
1
// Copyright 2013 The Flutter Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#include <memory>
6
#include "flutter/testing/testing.h"
7
#include "
impeller/core/allocator.h
"
8
#include "
impeller/core/formats.h
"
9
#include "
impeller/core/texture_descriptor.h
"
10
#include "
impeller/geometry/size.h
"
11
#include "
impeller/renderer/testing/mocks.h
"
12
13
namespace
impeller
{
14
namespace
testing {
15
16
TEST
(AllocatorTest, TextureDescriptorCompatibility) {
17
// Size.
18
{
19
TextureDescriptor
desc_a = {.
size
=
ISize
(100, 100)};
20
TextureDescriptor
desc_b = {.
size
=
ISize
(100, 100)};
21
TextureDescriptor
desc_c = {.
size
=
ISize
(101, 100)};
22
23
ASSERT_EQ(desc_a, desc_b);
24
ASSERT_NE(desc_a, desc_c);
25
}
26
// Storage Mode.
27
{
28
TextureDescriptor
desc_a = {.
storage_mode
=
StorageMode::kDevicePrivate
};
29
TextureDescriptor
desc_b = {.
storage_mode
=
StorageMode::kDevicePrivate
};
30
TextureDescriptor
desc_c = {.
storage_mode
=
StorageMode::kHostVisible
};
31
32
ASSERT_EQ(desc_a, desc_b);
33
ASSERT_NE(desc_a, desc_c);
34
}
35
// Format.
36
{
37
TextureDescriptor
desc_a = {.
format
=
PixelFormat::kR8G8B8A8UNormInt
};
38
TextureDescriptor
desc_b = {.
format
=
PixelFormat::kR8G8B8A8UNormInt
};
39
TextureDescriptor
desc_c = {.
format
=
PixelFormat::kB10G10R10A10XR
};
40
41
ASSERT_EQ(desc_a, desc_b);
42
ASSERT_NE(desc_a, desc_c);
43
}
44
// Sample Count.
45
{
46
TextureDescriptor
desc_a = {.
sample_count
=
SampleCount::kCount4
};
47
TextureDescriptor
desc_b = {.
sample_count
=
SampleCount::kCount4
};
48
TextureDescriptor
desc_c = {.
sample_count
=
SampleCount::kCount1
};
49
50
ASSERT_EQ(desc_a, desc_b);
51
ASSERT_NE(desc_a, desc_c);
52
}
53
// Sample Count.
54
{
55
TextureDescriptor
desc_a = {.
type
=
TextureType::kTexture2DMultisample
};
56
TextureDescriptor
desc_b = {.
type
=
TextureType::kTexture2DMultisample
};
57
TextureDescriptor
desc_c = {.
type
=
TextureType::kTexture2D
};
58
59
ASSERT_EQ(desc_a, desc_b);
60
ASSERT_NE(desc_a, desc_c);
61
}
62
// Compression.
63
{
64
TextureDescriptor
desc_a = {.
compression_type
=
CompressionType::kLossless
};
65
TextureDescriptor
desc_b = {.
compression_type
=
CompressionType::kLossless
};
66
TextureDescriptor
desc_c = {.
compression_type
=
CompressionType::kLossy
};
67
68
ASSERT_EQ(desc_a, desc_b);
69
ASSERT_NE(desc_a, desc_c);
70
}
71
// Mip Count.
72
{
73
TextureDescriptor
desc_a = {.
mip_count
= 1};
74
TextureDescriptor
desc_b = {.
mip_count
= 1};
75
TextureDescriptor
desc_c = {.
mip_count
= 4};
76
77
ASSERT_EQ(desc_a, desc_b);
78
ASSERT_NE(desc_a, desc_c);
79
}
80
}
81
82
}
// namespace testing
83
}
// namespace impeller
allocator.h
formats.h
size.h
mocks.h
impeller::testing::TEST
TEST(AiksCanvasTest, EmptyCullRect)
Definition:
canvas_unittests.cc:18
impeller
Definition:
texture.h:18
impeller::StorageMode::kDevicePrivate
@ kDevicePrivate
impeller::StorageMode::kHostVisible
@ kHostVisible
impeller::PixelFormat::kB10G10R10A10XR
@ kB10G10R10A10XR
impeller::PixelFormat::kR8G8B8A8UNormInt
@ kR8G8B8A8UNormInt
impeller::TextureType::kTexture2DMultisample
@ kTexture2DMultisample
impeller::TextureType::kTexture2D
@ kTexture2D
impeller::CompressionType::kLossy
@ kLossy
impeller::CompressionType::kLossless
@ kLossless
impeller::ISize
ISize64 ISize
Definition:
size.h:140
impeller::SampleCount::kCount4
@ kCount4
impeller::SampleCount::kCount1
@ kCount1
impeller::TextureDescriptor
A lightweight object that describes the attributes of a texture that can then used an allocator to cr...
Definition:
texture_descriptor.h:37
impeller::TextureDescriptor::compression_type
CompressionType compression_type
Definition:
texture_descriptor.h:45
impeller::TextureDescriptor::type
TextureType type
Definition:
texture_descriptor.h:39
impeller::TextureDescriptor::size
ISize size
Definition:
texture_descriptor.h:41
impeller::TextureDescriptor::storage_mode
StorageMode storage_mode
Definition:
texture_descriptor.h:38
impeller::TextureDescriptor::sample_count
SampleCount sample_count
Definition:
texture_descriptor.h:44
impeller::TextureDescriptor::mip_count
size_t mip_count
Definition:
texture_descriptor.h:42
impeller::TextureDescriptor::format
PixelFormat format
Definition:
texture_descriptor.h:40
texture_descriptor.h
Generated on Sun Jun 23 2024 21:54:59 for Flutter Engine by
1.9.4