cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

string-stream-test.c (1410B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * KUnit test for struct string_stream.
      4 *
      5 * Copyright (C) 2019, Google LLC.
      6 * Author: Brendan Higgins <brendanhiggins@google.com>
      7 */
      8
      9#include <kunit/test.h>
     10#include <linux/slab.h>
     11
     12#include "string-stream.h"
     13
     14static void string_stream_test_empty_on_creation(struct kunit *test)
     15{
     16	struct string_stream *stream = alloc_string_stream(test, GFP_KERNEL);
     17
     18	KUNIT_EXPECT_TRUE(test, string_stream_is_empty(stream));
     19}
     20
     21static void string_stream_test_not_empty_after_add(struct kunit *test)
     22{
     23	struct string_stream *stream = alloc_string_stream(test, GFP_KERNEL);
     24
     25	string_stream_add(stream, "Foo");
     26
     27	KUNIT_EXPECT_FALSE(test, string_stream_is_empty(stream));
     28}
     29
     30static void string_stream_test_get_string(struct kunit *test)
     31{
     32	struct string_stream *stream = alloc_string_stream(test, GFP_KERNEL);
     33	char *output;
     34
     35	string_stream_add(stream, "Foo");
     36	string_stream_add(stream, " %s", "bar");
     37
     38	output = string_stream_get_string(stream);
     39	KUNIT_ASSERT_STREQ(test, output, "Foo bar");
     40}
     41
     42static struct kunit_case string_stream_test_cases[] = {
     43	KUNIT_CASE(string_stream_test_empty_on_creation),
     44	KUNIT_CASE(string_stream_test_not_empty_after_add),
     45	KUNIT_CASE(string_stream_test_get_string),
     46	{}
     47};
     48
     49static struct kunit_suite string_stream_test_suite = {
     50	.name = "string-stream-test",
     51	.test_cases = string_stream_test_cases
     52};
     53kunit_test_suites(&string_stream_test_suite);