File: DataFixtureTest.cpp

package info (click to toggle)
cryfs 1.0.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 28,404 kB
  • sloc: cpp: 150,188; asm: 10,493; python: 1,455; javascript: 65; sh: 50; makefile: 17; xml: 7
file content (75 lines) | stat: -rw-r--r-- 2,391 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include <gtest/gtest.h>

#include <cstddef>

#include "cpp-utils/data/Data.h"
#include "cpp-utils/data/DataFixture.h"

using ::testing::Test;


using namespace cpputils;

class DataFixtureTest: public Test {
};

TEST_F(DataFixtureTest, CreateEmptyFixture) {
  const Data data = DataFixture::generate(0);
  EXPECT_EQ(0u, data.size());
}

TEST_F(DataFixtureTest, CreateOneByteFixture) {
  const Data data = DataFixture::generate(1);
  EXPECT_EQ(1u, data.size());
}

TEST_F(DataFixtureTest, CreateLargerFixture) {
  const Data data = DataFixture::generate(20 * 1024 * 1024);
  EXPECT_EQ(20u * 1024u * 1024u, data.size());
}

TEST_F(DataFixtureTest, FixturesAreDeterministic_DefaultSeed) {
  const Data data1 = DataFixture::generate(1024 * 1024);
  const Data data2 = DataFixture::generate(1024 * 1024);
  EXPECT_EQ(data1, data2);
}

TEST_F(DataFixtureTest, FixturesAreDeterministic_SeedIs5) {
  const Data data1 = DataFixture::generate(1024 * 1024, 5);
  const Data data2 = DataFixture::generate(1024 * 1024, 5);
  EXPECT_EQ(data1, data2);
}

TEST_F(DataFixtureTest, DifferentSeedIsDifferentFixture) {
  const Data data1 = DataFixture::generate(1024 * 1024, 0);
  const Data data2 = DataFixture::generate(1024 * 1024, 1);
  EXPECT_NE(data1, data2);
}

TEST_F(DataFixtureTest, FixturesAreDeterministic_DifferentSize_DefaultSeed_1) {
  Data data1 = DataFixture::generate(1024);
  Data data2 = DataFixture::generate(1);

  EXPECT_EQ(0, std::memcmp(data1.data(), data2.data(), 1));
}

TEST_F(DataFixtureTest, FixturesAreDeterministic_DifferentSize_DefaultSeed_2) {
  Data data1 = DataFixture::generate(1024);
  Data data2 = DataFixture::generate(501);  //Intentionally not 64bit-aligned, because the generate() function generates 64bit values for performance

  EXPECT_EQ(0, std::memcmp(data1.data(), data2.data(), 501));
}

TEST_F(DataFixtureTest, FixturesAreDeterministic_DifferentSize_SeedIs5_1) {
  Data data1 = DataFixture::generate(1024, 5);
  Data data2 = DataFixture::generate(1, 5);

  EXPECT_EQ(0, std::memcmp(data1.data(), data2.data(), 1));
}

TEST_F(DataFixtureTest, FixturesAreDeterministic_DifferentSize_SeedIs5_2) {
  Data data1 = DataFixture::generate(1024, 5);
  Data data2 = DataFixture::generate(501, 5);  //Intentionally not 64bit-aligned, because the generate() function generates 64bit values for performance

  EXPECT_EQ(0, std::memcmp(data1.data(), data2.data(), 501));
}