File: test_tilecell.cc

package info (click to toggle)
crawl 2%3A0.34.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 100,188 kB
  • sloc: cpp: 363,709; ansic: 27,765; javascript: 9,516; python: 8,463; perl: 3,293; java: 3,132; xml: 2,380; makefile: 1,835; sh: 611; objc: 250; cs: 15; sed: 9; lisp: 3
file content (36 lines) | stat: -rw-r--r-- 1,017 bytes parent folder | download | duplicates (2)
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
#include "catch_amalgamated.hpp"
#include "AppHdr.h"
#ifdef USE_TILE
#include "tilecell.h"


TEST_CASE( "add_overlay deduplication", "[single-file]")
{
    packed_cell cell;
    cell.add_overlay(5);
    REQUIRE(cell.dngn_overlay[0] == 5);
    REQUIRE(cell.dngn_overlay[1] == 0);
    REQUIRE(cell.num_dngn_overlay == 1);

    // Adding the same overlay twice in a row gets deduplicated
    cell.add_overlay(5);
    REQUIRE(cell.dngn_overlay[0] == 5);
    REQUIRE(cell.dngn_overlay[1] == 0);
    REQUIRE(cell.num_dngn_overlay == 1);

    // Adding the same overlay separately gets deduplicated
    cell.add_overlay(6);
    cell.add_overlay(7);
    cell.add_overlay(6);
    REQUIRE(cell.dngn_overlay[0] == 5);
    REQUIRE(cell.dngn_overlay[1] == 6);
    REQUIRE(cell.dngn_overlay[2] == 7);
    REQUIRE(cell.num_dngn_overlay == 3);

    cell.clear();
    REQUIRE(cell.dngn_overlay[0] == 0);
    REQUIRE(cell.dngn_overlay[1] == 0);
    REQUIRE(cell.dngn_overlay[2] == 0);
    REQUIRE(cell.num_dngn_overlay == 0);
}
#endif