Merge branch 'master' into issue_1453
commit
c128e7e56c
|
@ -596,10 +596,10 @@ public:
|
||||||
return textures[index];
|
return textures[index];
|
||||||
|
|
||||||
}
|
}
|
||||||
const int textureCount() const {
|
int textureCount() const {
|
||||||
return static_cast<int>(textures.size());
|
return static_cast<int>(textures.size());
|
||||||
}
|
}
|
||||||
const BlendMode GetBlendMode() const
|
BlendMode GetBlendMode() const
|
||||||
{
|
{
|
||||||
return blendMode;
|
return blendMode;
|
||||||
}
|
}
|
||||||
|
@ -647,7 +647,7 @@ public:
|
||||||
return content;
|
return content;
|
||||||
}
|
}
|
||||||
|
|
||||||
const uint32_t ContentLength() const {
|
uint32_t ContentLength() const {
|
||||||
return contentLength;
|
return contentLength;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -111,7 +111,7 @@ inline void SetGenericPropertyPtr(std::map< unsigned int, T* >& list,
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------------------------
|
||||||
template <class T>
|
template <class T>
|
||||||
inline const bool HasGenericProperty(const std::map< unsigned int, T >& list,
|
inline bool HasGenericProperty(const std::map< unsigned int, T >& list,
|
||||||
const char* szName)
|
const char* szName)
|
||||||
{
|
{
|
||||||
ai_assert(NULL != szName);
|
ai_assert(NULL != szName);
|
||||||
|
|
|
@ -55,19 +55,19 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
namespace Assimp {
|
namespace Assimp {
|
||||||
|
|
||||||
// Material specific token
|
// Material specific token (case insensitive compare)
|
||||||
static const std::string DiffuseTexture = "map_Kd";
|
static const std::string DiffuseTexture = "map_Kd";
|
||||||
static const std::string AmbientTexture = "map_Ka";
|
static const std::string AmbientTexture = "map_Ka";
|
||||||
static const std::string SpecularTexture = "map_Ks";
|
static const std::string SpecularTexture = "map_Ks";
|
||||||
static const std::string OpacityTexture = "map_d";
|
static const std::string OpacityTexture = "map_d";
|
||||||
static const std::string EmissiveTexture = "map_emissive";
|
static const std::string EmissiveTexture1 = "map_emissive";
|
||||||
static const std::string EmissiveTexture_1 = "map_Ke";
|
static const std::string EmissiveTexture2 = "map_Ke";
|
||||||
static const std::string BumpTexture1 = "map_bump";
|
static const std::string BumpTexture1 = "map_bump";
|
||||||
static const std::string BumpTexture2 = "map_Bump";
|
static const std::string BumpTexture2 = "bump";
|
||||||
static const std::string BumpTexture3 = "bump";
|
|
||||||
static const std::string NormalTexture = "map_Kn";
|
static const std::string NormalTexture = "map_Kn";
|
||||||
static const std::string ReflectionTexture = "refl";
|
static const std::string ReflectionTexture = "refl";
|
||||||
static const std::string DisplacementTexture = "disp";
|
static const std::string DisplacementTexture1 = "map_disp";
|
||||||
|
static const std::string DisplacementTexture2 = "disp";
|
||||||
static const std::string SpecularityTexture = "map_ns";
|
static const std::string SpecularityTexture = "map_ns";
|
||||||
|
|
||||||
// texture option specific token
|
// texture option specific token
|
||||||
|
@ -329,7 +329,7 @@ void ObjFileMtlImporter::getTexture() {
|
||||||
// Ambient texture
|
// Ambient texture
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureAmbient;
|
out = & m_pModel->m_pCurrentMaterial->textureAmbient;
|
||||||
clampIndex = ObjFile::Material::TextureAmbientType;
|
clampIndex = ObjFile::Material::TextureAmbientType;
|
||||||
} else if (!ASSIMP_strincmp( pPtr, SpecularTexture.c_str(), static_cast<unsigned int>(SpecularTexture.size()) ) ) {
|
} else if ( !ASSIMP_strincmp( pPtr, SpecularTexture.c_str(), static_cast<unsigned int>(SpecularTexture.size()) ) ) {
|
||||||
// Specular texture
|
// Specular texture
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureSpecular;
|
out = & m_pModel->m_pCurrentMaterial->textureSpecular;
|
||||||
clampIndex = ObjFile::Material::TextureSpecularType;
|
clampIndex = ObjFile::Material::TextureSpecularType;
|
||||||
|
@ -337,33 +337,30 @@ void ObjFileMtlImporter::getTexture() {
|
||||||
// Opacity texture
|
// Opacity texture
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureOpacity;
|
out = & m_pModel->m_pCurrentMaterial->textureOpacity;
|
||||||
clampIndex = ObjFile::Material::TextureOpacityType;
|
clampIndex = ObjFile::Material::TextureOpacityType;
|
||||||
} else if (!ASSIMP_strincmp( pPtr, EmissiveTexture.c_str(), static_cast<unsigned int>(EmissiveTexture.size()) ) ) {
|
} else if ( !ASSIMP_strincmp( pPtr, EmissiveTexture1.c_str(), static_cast<unsigned int>(EmissiveTexture1.size()) ) ||
|
||||||
|
!ASSIMP_strincmp( pPtr, EmissiveTexture2.c_str(), static_cast<unsigned int>(EmissiveTexture2.size()) ) ) {
|
||||||
// Emissive texture
|
// Emissive texture
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureEmissive;
|
out = & m_pModel->m_pCurrentMaterial->textureEmissive;
|
||||||
clampIndex = ObjFile::Material::TextureEmissiveType;
|
clampIndex = ObjFile::Material::TextureEmissiveType;
|
||||||
} else if ( !ASSIMP_strincmp( pPtr, EmissiveTexture_1.c_str(), static_cast<unsigned int>(EmissiveTexture_1.size()) ) ) {
|
|
||||||
// Emissive texture
|
|
||||||
out = &m_pModel->m_pCurrentMaterial->textureEmissive;
|
|
||||||
clampIndex = ObjFile::Material::TextureEmissiveType;
|
|
||||||
} else if ( !ASSIMP_strincmp( pPtr, BumpTexture1.c_str(), static_cast<unsigned int>(BumpTexture1.size()) ) ||
|
} else if ( !ASSIMP_strincmp( pPtr, BumpTexture1.c_str(), static_cast<unsigned int>(BumpTexture1.size()) ) ||
|
||||||
!ASSIMP_strincmp( pPtr, BumpTexture2.c_str(), static_cast<unsigned int>(BumpTexture2.size()) ) ||
|
!ASSIMP_strincmp( pPtr, BumpTexture2.c_str(), static_cast<unsigned int>(BumpTexture2.size()) ) ) {
|
||||||
!ASSIMP_strincmp( pPtr, BumpTexture3.c_str(), static_cast<unsigned int>(BumpTexture3.size()) ) ) {
|
|
||||||
// Bump texture
|
// Bump texture
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureBump;
|
out = & m_pModel->m_pCurrentMaterial->textureBump;
|
||||||
clampIndex = ObjFile::Material::TextureBumpType;
|
clampIndex = ObjFile::Material::TextureBumpType;
|
||||||
} else if (!ASSIMP_strincmp( pPtr,NormalTexture.c_str(), static_cast<unsigned int>(NormalTexture.size()) ) ) {
|
} else if ( !ASSIMP_strincmp( pPtr,NormalTexture.c_str(), static_cast<unsigned int>(NormalTexture.size()) ) ) {
|
||||||
// Normal map
|
// Normal map
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureNormal;
|
out = & m_pModel->m_pCurrentMaterial->textureNormal;
|
||||||
clampIndex = ObjFile::Material::TextureNormalType;
|
clampIndex = ObjFile::Material::TextureNormalType;
|
||||||
} else if(!ASSIMP_strincmp( pPtr, ReflectionTexture.c_str(), static_cast<unsigned int>(ReflectionTexture.size()) ) ) {
|
} else if( !ASSIMP_strincmp( pPtr, ReflectionTexture.c_str(), static_cast<unsigned int>(ReflectionTexture.size()) ) ) {
|
||||||
// Reflection texture(s)
|
// Reflection texture(s)
|
||||||
//Do nothing here
|
//Do nothing here
|
||||||
return;
|
return;
|
||||||
} else if (!ASSIMP_strincmp( pPtr, DisplacementTexture.c_str(), static_cast<unsigned int>(DisplacementTexture.size()) ) ) {
|
} else if ( !ASSIMP_strincmp( pPtr, DisplacementTexture1.c_str(), static_cast<unsigned int>(DisplacementTexture1.size()) ) ||
|
||||||
|
!ASSIMP_strincmp( pPtr, DisplacementTexture2.c_str(), static_cast<unsigned int>(DisplacementTexture2.size()) ) ) {
|
||||||
// Displacement texture
|
// Displacement texture
|
||||||
out = &m_pModel->m_pCurrentMaterial->textureDisp;
|
out = &m_pModel->m_pCurrentMaterial->textureDisp;
|
||||||
clampIndex = ObjFile::Material::TextureDispType;
|
clampIndex = ObjFile::Material::TextureDispType;
|
||||||
} else if (!ASSIMP_strincmp( pPtr, SpecularityTexture.c_str(), static_cast<unsigned int>(SpecularityTexture.size()) ) ) {
|
} else if ( !ASSIMP_strincmp( pPtr, SpecularityTexture.c_str(), static_cast<unsigned int>(SpecularityTexture.size()) ) ) {
|
||||||
// Specularity scaling (glossiness)
|
// Specularity scaling (glossiness)
|
||||||
out = & m_pModel->m_pCurrentMaterial->textureSpecularity;
|
out = & m_pModel->m_pCurrentMaterial->textureSpecularity;
|
||||||
clampIndex = ObjFile::Material::TextureSpecularityType;
|
clampIndex = ObjFile::Material::TextureSpecularityType;
|
||||||
|
|
|
@ -140,8 +140,8 @@ namespace o3dgc
|
||||||
{
|
{
|
||||||
return End(element) - Begin(element);
|
return End(element) - Begin(element);
|
||||||
}
|
}
|
||||||
long * const GetNumNeighborsBuffer() { return m_numNeighbors;}
|
long * GetNumNeighborsBuffer() { return m_numNeighbors;}
|
||||||
long * const GetNeighborsBuffer() { return m_neighbors;}
|
long * GetNeighborsBuffer() { return m_neighbors;}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
long m_neighborsSize; // actual allocated size for m_neighbors
|
long m_neighborsSize; // actual allocated size for m_neighbors
|
||||||
|
|
|
@ -395,15 +395,15 @@ namespace o3dgc
|
||||||
{
|
{
|
||||||
return m_stream.GetSize();
|
return m_stream.GetSize();
|
||||||
}
|
}
|
||||||
const unsigned char * const GetBuffer(unsigned long position) const
|
const unsigned char * GetBuffer(unsigned long position) const
|
||||||
{
|
{
|
||||||
return m_stream.GetBuffer() + position;
|
return m_stream.GetBuffer() + position;
|
||||||
}
|
}
|
||||||
unsigned char * const GetBuffer(unsigned long position)
|
unsigned char * GetBuffer(unsigned long position)
|
||||||
{
|
{
|
||||||
return (m_stream.GetBuffer() + position);
|
return (m_stream.GetBuffer() + position);
|
||||||
}
|
}
|
||||||
unsigned char * const GetBuffer()
|
unsigned char * GetBuffer()
|
||||||
{
|
{
|
||||||
return m_stream.GetBuffer();
|
return m_stream.GetBuffer();
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,10 +48,10 @@ namespace o3dgc
|
||||||
unsigned long GetNVector() const { return m_num;}
|
unsigned long GetNVector() const { return m_num;}
|
||||||
unsigned long GetDimVector() const { return m_dim;}
|
unsigned long GetDimVector() const { return m_dim;}
|
||||||
unsigned long GetStride() const { return m_stride;}
|
unsigned long GetStride() const { return m_stride;}
|
||||||
const Real * const GetMin() const { return m_min;}
|
const Real * GetMin() const { return m_min;}
|
||||||
const Real * const GetMax() const { return m_max;}
|
const Real * GetMax() const { return m_max;}
|
||||||
const Real * const GetVectors() const { return m_vectors;}
|
const Real * GetVectors() const { return m_vectors;}
|
||||||
Real * const GetVectors() { return m_vectors;}
|
Real * GetVectors() { return m_vectors;}
|
||||||
Real GetMin(unsigned long j) const { return m_min[j];}
|
Real GetMin(unsigned long j) const { return m_min[j];}
|
||||||
Real GetMax(unsigned long j) const { return m_max[j];}
|
Real GetMax(unsigned long j) const { return m_max[j];}
|
||||||
|
|
||||||
|
|
|
@ -81,8 +81,8 @@ namespace o3dgc
|
||||||
m_end = 0;
|
m_end = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const unsigned long GetSize() const { return m_size;};
|
unsigned long GetSize() const { return m_size;};
|
||||||
const unsigned long GetAllocatedSize() const { return m_allocated;};
|
unsigned long GetAllocatedSize() const { return m_allocated;};
|
||||||
void Clear() { m_start = m_end = m_size = 0;};
|
void Clear() { m_start = m_end = m_size = 0;};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -62,26 +62,26 @@ namespace o3dgc
|
||||||
}
|
}
|
||||||
unsigned long GetNumFloatAttributes() const { return m_numFloatAttributes;}
|
unsigned long GetNumFloatAttributes() const { return m_numFloatAttributes;}
|
||||||
unsigned long GetNumIntAttributes() const { return m_numIntAttributes ;}
|
unsigned long GetNumIntAttributes() const { return m_numIntAttributes ;}
|
||||||
const Real * const GetCoordMin () const { return m_coordMin;}
|
const Real * GetCoordMin () const { return m_coordMin;}
|
||||||
const Real * const GetCoordMax () const { return m_coordMax;}
|
const Real * GetCoordMax () const { return m_coordMax;}
|
||||||
const Real * const GetNormalMin () const { return m_normalMin;}
|
const Real * GetNormalMin () const { return m_normalMin;}
|
||||||
const Real * const GetNormalMax () const { return m_normalMax;}
|
const Real * GetNormalMax () const { return m_normalMax;}
|
||||||
Real GetCoordMin (int j) const { return m_coordMin[j] ;}
|
Real GetCoordMin (int j) const { return m_coordMin[j] ;}
|
||||||
Real GetCoordMax (int j) const { return m_coordMax[j] ;}
|
Real GetCoordMax (int j) const { return m_coordMax[j] ;}
|
||||||
Real GetNormalMin (int j) const { return m_normalMin[j] ;}
|
Real GetNormalMin (int j) const { return m_normalMin[j] ;}
|
||||||
Real GetNormalMax (int j) const { return m_normalMax[j] ;}
|
Real GetNormalMax (int j) const { return m_normalMax[j] ;}
|
||||||
|
|
||||||
const O3DGCIFSFloatAttributeType GetFloatAttributeType(unsigned long a) const
|
O3DGCIFSFloatAttributeType GetFloatAttributeType(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
||||||
return m_typeFloatAttribute[a];
|
return m_typeFloatAttribute[a];
|
||||||
}
|
}
|
||||||
const O3DGCIFSIntAttributeType GetIntAttributeType(unsigned long a) const
|
O3DGCIFSIntAttributeType GetIntAttributeType(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_INT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_INT_ATTRIBUTES);
|
||||||
return m_typeIntAttribute[a];
|
return m_typeIntAttribute[a];
|
||||||
}
|
}
|
||||||
const unsigned long GetFloatAttributeDim(unsigned long a) const
|
unsigned long GetFloatAttributeDim(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
||||||
return m_dimFloatAttribute[a];
|
return m_dimFloatAttribute[a];
|
||||||
|
@ -91,12 +91,12 @@ namespace o3dgc
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_INT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_INT_ATTRIBUTES);
|
||||||
return m_dimIntAttribute[a];
|
return m_dimIntAttribute[a];
|
||||||
}
|
}
|
||||||
const Real * const GetFloatAttributeMin(unsigned long a) const
|
const Real * GetFloatAttributeMin(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
||||||
return &(m_minFloatAttribute[a * O3DGC_SC3DMC_MAX_DIM_ATTRIBUTES]);
|
return &(m_minFloatAttribute[a * O3DGC_SC3DMC_MAX_DIM_ATTRIBUTES]);
|
||||||
}
|
}
|
||||||
const Real * const GetFloatAttributeMax(unsigned long a) const
|
const Real * GetFloatAttributeMax(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
||||||
return &(m_maxFloatAttribute[a * O3DGC_SC3DMC_MAX_DIM_ATTRIBUTES]);
|
return &(m_maxFloatAttribute[a * O3DGC_SC3DMC_MAX_DIM_ATTRIBUTES]);
|
||||||
|
@ -118,17 +118,17 @@ namespace o3dgc
|
||||||
bool GetSolid() const { return m_solid ;}
|
bool GetSolid() const { return m_solid ;}
|
||||||
bool GetConvex() const { return m_convex ;}
|
bool GetConvex() const { return m_convex ;}
|
||||||
bool GetIsTriangularMesh() const { return m_isTriangularMesh;}
|
bool GetIsTriangularMesh() const { return m_isTriangularMesh;}
|
||||||
const unsigned long * const GetIndexBufferID() const { return m_indexBufferID ;}
|
const unsigned long * GetIndexBufferID() const { return m_indexBufferID ;}
|
||||||
const T * const GetCoordIndex() const { return m_coordIndex;}
|
const T * GetCoordIndex() const { return m_coordIndex;}
|
||||||
T * const GetCoordIndex() { return m_coordIndex;}
|
T * GetCoordIndex() { return m_coordIndex;}
|
||||||
Real * const GetCoord() const { return m_coord ;}
|
Real * GetCoord() const { return m_coord ;}
|
||||||
Real * const GetNormal() const { return m_normal ;}
|
Real * GetNormal() const { return m_normal ;}
|
||||||
Real * const GetFloatAttribute(unsigned long a) const
|
Real * GetFloatAttribute(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_FLOAT_ATTRIBUTES);
|
||||||
return m_floatAttribute[a];
|
return m_floatAttribute[a];
|
||||||
}
|
}
|
||||||
long * const GetIntAttribute(unsigned long a) const
|
long * GetIntAttribute(unsigned long a) const
|
||||||
{
|
{
|
||||||
assert(a < O3DGC_SC3DMC_MAX_NUM_INT_ATTRIBUTES);
|
assert(a < O3DGC_SC3DMC_MAX_NUM_INT_ATTRIBUTES);
|
||||||
return m_intAttribute[a] ;
|
return m_intAttribute[a] ;
|
||||||
|
|
|
@ -50,10 +50,10 @@ namespace o3dgc
|
||||||
BinaryStream & bstream);
|
BinaryStream & bstream);
|
||||||
O3DGCStreamType GetStreamType() const { return m_streamType; }
|
O3DGCStreamType GetStreamType() const { return m_streamType; }
|
||||||
void SetStreamType(O3DGCStreamType streamType) { m_streamType = streamType; }
|
void SetStreamType(O3DGCStreamType streamType) { m_streamType = streamType; }
|
||||||
const long * const GetInvVMap() const { return m_invVMap;}
|
const long * GetInvVMap() const { return m_invVMap;}
|
||||||
const long * const GetInvTMap() const { return m_invTMap;}
|
const long * GetInvTMap() const { return m_invTMap;}
|
||||||
const long * const GetVMap() const { return m_vmap;}
|
const long * GetVMap() const { return m_vmap;}
|
||||||
const long * const GetTMap() const { return m_tmap;}
|
const long * GetTMap() const { return m_tmap;}
|
||||||
const AdjacencyInfo & GetVertexToTriangle() const { return m_vertexToTriangle;}
|
const AdjacencyInfo & GetVertexToTriangle() const { return m_vertexToTriangle;}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -88,8 +88,8 @@ namespace o3dgc
|
||||||
assert(m_size < m_allocated);
|
assert(m_size < m_allocated);
|
||||||
m_buffer[m_size++] = value;
|
m_buffer[m_size++] = value;
|
||||||
}
|
}
|
||||||
const T * const GetBuffer() const { return m_buffer;};
|
const T * GetBuffer() const { return m_buffer;};
|
||||||
T * const GetBuffer() { return m_buffer;};
|
T * GetBuffer() { return m_buffer;};
|
||||||
unsigned long GetSize() const { return m_size;};
|
unsigned long GetSize() const { return m_size;};
|
||||||
void SetSize(unsigned long size)
|
void SetSize(unsigned long size)
|
||||||
{
|
{
|
||||||
|
|
|
@ -69,6 +69,11 @@ TEST_F( utDefaultIOStream, FileSizeTest ) {
|
||||||
auto vflush = std::fflush( fs );
|
auto vflush = std::fflush( fs );
|
||||||
ASSERT_EQ(vflush, 0);
|
ASSERT_EQ(vflush, 0);
|
||||||
|
|
||||||
|
std::fclose(fs);
|
||||||
|
fs = std::fopen(fpath, "r");
|
||||||
|
|
||||||
|
ASSERT_NE(nullptr, fs);
|
||||||
|
|
||||||
TestDefaultIOStream myStream( fs, fpath);
|
TestDefaultIOStream myStream( fs, fpath);
|
||||||
size_t size = myStream.FileSize();
|
size_t size = myStream.FileSize();
|
||||||
EXPECT_EQ( size, dataSize);
|
EXPECT_EQ( size, dataSize);
|
||||||
|
|
|
@ -90,7 +90,11 @@ TEST_F( IOStreamBufferTest, open_close_Test ) {
|
||||||
|
|
||||||
auto written = std::fwrite( data, sizeof(*data), dataCount, fs );
|
auto written = std::fwrite( data, sizeof(*data), dataCount, fs );
|
||||||
EXPECT_NE( 0U, written );
|
EXPECT_NE( 0U, written );
|
||||||
std::fflush( fs );
|
auto flushResult = std::fflush( fs );
|
||||||
|
ASSERT_EQ(0, flushResult);
|
||||||
|
std::fclose( fs );
|
||||||
|
fs = std::fopen(fname, "r");
|
||||||
|
ASSERT_NE(nullptr, fs);
|
||||||
{
|
{
|
||||||
TestDefaultIOStream myStream( fs, fname );
|
TestDefaultIOStream myStream( fs, fname );
|
||||||
|
|
||||||
|
@ -112,7 +116,12 @@ TEST_F( IOStreamBufferTest, readlineTest ) {
|
||||||
|
|
||||||
auto written = std::fwrite( data, sizeof(*data), dataCount, fs );
|
auto written = std::fwrite( data, sizeof(*data), dataCount, fs );
|
||||||
EXPECT_NE( 0U, written );
|
EXPECT_NE( 0U, written );
|
||||||
std::fflush( fs );
|
|
||||||
|
auto flushResult = std::fflush(fs);
|
||||||
|
ASSERT_EQ(0, flushResult);
|
||||||
|
std::fclose(fs);
|
||||||
|
fs = std::fopen(fname, "r");
|
||||||
|
ASSERT_NE(nullptr, fs);
|
||||||
|
|
||||||
const auto tCacheSize = 26u;
|
const auto tCacheSize = 26u;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue