From 483c73630a82fe8fbe9fe74cc8bbdd23a13d8b6b Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周六, 15 2月 2020 23:49:50 +0800 Subject: [PATCH] pc identifiers work --- test/functional/standard-license_test.cpp | 113 ++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 68 insertions(+), 45 deletions(-) diff --git a/test/functional/standard-license_test.cpp b/test/functional/standard-license_test.cpp index 19b6000..8bb45b1 100644 --- a/test/functional/standard-license_test.cpp +++ b/test/functional/standard-license_test.cpp @@ -1,30 +1,51 @@ #define BOOST_TEST_MODULE test_standard_license #include <boost/test/unit_test.hpp> -#include "../../src/tools/license-generator/license-generator.h" -#include "../../src/library/api/license++.h" -#include <build_properties.h> #include <boost/filesystem.hpp> + +#include <licensecc/licensecc.h> +#include <licensecc_properties_test.h> +#include <licensecc_properties.h> + #include "../../src/library/ini/SimpleIni.h" #include "generate-license.h" #include "../../src/library/base/FileUtils.hpp" -namespace test { -namespace fs = boost::filesystem; -using namespace license; using namespace std; +namespace fs = boost::filesystem; -BOOST_AUTO_TEST_CASE( standard_lic_file ) { - const string licLocation(PROJECT_TEST_TEMP_DIR "/standard_license.lic"); +namespace license { +namespace test { + +/** + * Test a generic license with no expiry neither client id. The license is read from file + */ +BOOST_AUTO_TEST_CASE(test_generic_license_read_file) { const vector<string> extraArgs; - generate_license(licLocation, extraArgs); + const string licLocation = generate_license("standard_license", extraArgs); /* */ LicenseInfo license; - LicenseLocation licenseLocation; - licenseLocation.licenseFileLocation = licLocation.c_str(); - licenseLocation.licenseData = nullptr; - const EVENT_TYPE result = acquire_license("TEST", &licenseLocation, - &license); + LicenseLocation location = {LICENSE_PATH}; + std::copy(licLocation.begin(), licLocation.end(), location.licenseData); + const LCC_EVENT_TYPE result = acquire_license(nullptr, &location, &license); + BOOST_CHECK_EQUAL(result, LICENSE_OK); + BOOST_CHECK_EQUAL(license.has_expiry, false); + BOOST_CHECK_EQUAL(license.linked_to_pc, false); +} + +/** + * Test a generic license with no expiry neither client id. The license is passed in trhough the licenseData structure. + */ +BOOST_AUTO_TEST_CASE(test_read_license_data) { + const vector<string> extraArgs; + const fs::path licLocation = fs::path(generate_license("standard_license1", extraArgs)); + string license_data; + // load the license string + fs::load_string_file(licLocation, license_data); + LicenseInfo license; + LicenseLocation location = {LICENSE_PLAIN_DATA}; + std::copy(license_data.begin(), license_data.end(), location.licenseData); + const LCC_EVENT_TYPE result = acquire_license(nullptr, &location, &license); BOOST_CHECK_EQUAL(result, LICENSE_OK); BOOST_CHECK_EQUAL(license.has_expiry, false); BOOST_CHECK_EQUAL(license.linked_to_pc, false); @@ -33,36 +54,38 @@ /** * Pass the license data to the application. */ -BOOST_AUTO_TEST_CASE( b64_environment_variable ) { - const string licLocation(PROJECT_TEST_TEMP_DIR "/standard_env_license.lic"); - const vector<string> extraArgs; - generate_license(licLocation, extraArgs); - const string licensestr(license::get_file_contents(licLocation.c_str(), MAX_LICENSE_LENGTH)); - /* */ - LicenseInfo license; - LicenseLocation licenseLocation; - licenseLocation.licenseFileLocation = nullptr; - licenseLocation.licenseData = licensestr.c_str(); - const EVENT_TYPE result = acquire_license("TEST", &licenseLocation, - &license); - BOOST_CHECK_EQUAL(result, LICENSE_OK); - BOOST_CHECK_EQUAL(license.has_expiry, false); - BOOST_CHECK_EQUAL(license.linked_to_pc, false); -} -BOOST_AUTO_TEST_CASE( pc_identifier ) { - const string licLocation(PROJECT_TEST_TEMP_DIR "/pc_identifier.lic"); - const vector<string> extraArgs = { "-s", "Jaaa-aaaa-MG9F-ZhB1" }; - generate_license(licLocation, extraArgs); - - LicenseInfo license; - LicenseLocation licenseLocation; - licenseLocation.licenseFileLocation = licLocation.c_str(); - licenseLocation.licenseData = ""; - const EVENT_TYPE result = acquire_license("TEST", &licenseLocation, - &license); - BOOST_CHECK_EQUAL(result, IDENTIFIERS_MISMATCH); - BOOST_CHECK_EQUAL(license.has_expiry, false); - BOOST_CHECK_EQUAL(license.linked_to_pc, true); +// BOOST_AUTO_TEST_CASE( b64_environment_variable ) { +// const string licLocation(PROJECT_TEST_TEMP_DIR "/standard_env_license.lic"); +// const vector<string> extraArgs; +// generate_license(licLocation, extraArgs); +// const string licensestr(license::get_file_contents(licLocation.c_str(), MAX_LICENSE_LENGTH)); +// /* */ +// LicenseInfo license; +// LicenseLocation licenseLocation; +// licenseLocation.licenseFileLocation = nullptr; +// licenseLocation.licenseData = licensestr.c_str(); +// const EVENT_TYPE result = acquire_license("TEST", &licenseLocation, +// &license); +// BOOST_CHECK_EQUAL(result, LICENSE_OK); +// BOOST_CHECK_EQUAL(license.has_expiry, false); +// BOOST_CHECK_EQUAL(license.linked_to_pc, false); +//} +// +// BOOST_AUTO_TEST_CASE( hw_identifier ) { +// const string licLocation(PROJECT_TEST_TEMP_DIR "/hw_identifier.lic"); +// const vector<string> extraArgs = { "-s", "Jaaa-aaaa-MG9F-ZhB1" }; +// generate_license(licLocation, extraArgs); +// +// LicenseInfo license; +// LicenseLocation licenseLocation; +// licenseLocation.licenseFileLocation = licLocation.c_str(); +// licenseLocation.licenseData = ""; +// const EVENT_TYPE result = acquire_license("TEST", &licenseLocation, +// &license); +// BOOST_CHECK_EQUAL(result, IDENTIFIERS_MISMATCH); +// BOOST_CHECK_EQUAL(license.has_expiry, false); +// BOOST_CHECK_EQUAL(license.linked_to_pc, true); +//} } -} +} // namespace license -- Gitblit v1.9.1